免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 6728 | 回复: 21
打印 上一主题 下一主题

[C++] 求各位大侠帮我用C++写一个,读写文件的函数(急!!!) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-03-19 09:26 |只看该作者 |倒序浏览
我初学习编程,请各位大侠帮助
题目如下:
用标准C++写一个关于函数能实现对配置文件test.cnf的读写。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2007-03-19 10:24 |只看该作者
小伙子,不要偷懒。

论坛徽章:
2
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:11
3 [报告]
发表于 2007-03-19 10:25 |只看该作者
狂汗,楼主是干什么的,这种事都不做

论坛徽章:
0
4 [报告]
发表于 2007-03-19 10:28 |只看该作者
不是我投懒阿.我自己写了一个.用C语言写的。可是不知道怎么了调用的时候就是乱码。
因为我是要用C++函数来调用的,对于C++我不了解,不会用写。是不是用类似的fopen 等函数,由于时间比较紧所以,希望和大家一起写。
也请大家帮助。我是新手对很多的系统提供的函数都不怎么了解。

论坛徽章:
0
5 [报告]
发表于 2007-03-19 10:30 |只看该作者
原帖由 小蟹子 于 2007-3-19 10:28 发表
不是我投懒阿.我自己写了一个.用C语言写的。可是不知道怎么了调用的时候就是乱码。
因为我是要用C++函数来调用的,对于C++我不了解,不会用写。是不是用类似的fopen 等函数,由于时间比较紧所以,希望和大家一起 ...

听说C++里面可以调用C的函数。

没有测试过

论坛徽章:
0
6 [报告]
发表于 2007-03-19 10:35 |只看该作者
这个是我写的用C写的。应该是非常幼稚。
也贴出来,各位大侠,再帮我用C++写的同时,别忘了多多批评我这个版本!
文件的存储格式是:
name = TSV
age = 26
函数的功能是:
将文件里面的str项相匹配行的值提取出来,返回。
也就是如果str="name"则返回“TSV”

#include "readCnf.h"
#include <stdio.h>

char * readCnf(FILE *fp ,char * str)
{
        char strTest[20];
        char *sp=strTest;
        int number,n;
        char ch;
        while (!feof)
        {
                while (ch!='\n')
                {
                        ch=fgetc(fp);
                        *sp=ch;
                        sp++;
                }
                if ((number=strstr(strTest,str))!= NULL)
                {
                        sp = strTest;
                        n=0;
                        while (n<number)
                        {
                                sp=*(sp+n);
                                sp++;
                        }
                        printf("%s",strTest);
                        return strTest;
                }

                sp = strTest;        }
        printf("%s",strTest);
        return 0;

}
我在调用这个函数的时候就乱码。

论坛徽章:
0
7 [报告]
发表于 2007-03-19 10:48 |只看该作者
晕~~好多错误......
随便看一下:
  while (!feof)
  strstr(strTest,str))以及其返回值

论坛徽章:
0
8 [报告]
发表于 2007-03-19 10:51 |只看该作者
偶比较好奇,lz是怎么通过编译的?

论坛徽章:
0
9 [报告]
发表于 2007-03-19 10:53 |只看该作者
虽然是用C写的,但是你用C++编译器一起编译连接的
那又有什么区别。
还是改代码吧。

论坛徽章:
0
10 [报告]
发表于 2007-03-19 10:58 |只看该作者
我知道很多错误啊,但是我还有改很长一段时间。所以麻烦大侠们帮我写一个啊。
我写了一天了,都快了郁闷死了。
我一点经验都没有啊。
我生成了一个库。Makefile代码是这样写的。
CC = gcc -g
INC = -I $$HOME/guo/example/jsoesTest/include
# gcc -I $HOME/guo/example/jsoesTest/include -c readCom.c
CFLAGS = #-fpic -shared
LIB =
SOURCE= readCom.c
OBJS =readCom.o
TARGET =libreadom.so
all(TARGET) $(OBJS)
$(TARGET)(OBJS)
        $(CC) -fpic -shared  -o $@ $^
$(OBJS)(SOURCE)
        $(CC) $(INC) -c $(SOURCE)
clean:
        rm -f $(TARGET) $(OBJS)
install:
        cp $(TARGET) ../lib
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP