[C]文件读写

mononom 2014-01-17 05:00:53

我在用C写一段文件读写的程序,但是文件一直打不开,不知道为什么,请高手指教,谢谢!

下面是程度:
#include <stdio.h>

int main(int argc, const char * argv[])
{

int test=2;
FILE * fic=NULL;
if(fic==fopen("table.txt","w"))
printf("file open");
fprintf(fic,"%d",test);
fclose(fic);
return 0;
}
...全文
108 点赞 收藏 12
写回复
12 条回复
Mr. Code 2014年01月18日
xcode是MAC和IOS下用的吧?用得不是object-c吗?我不熟这个。你要找个专门讨论这个的地方问,
引用 11 楼 u013190286 的回复:
那我运行这段程序的时候,它并没有生成新的文件,我也不太明白是怎么回事。我用的是xcode [quote=引用 10 楼 KenZhang1031 的回复:] 我没刻意放哪,文件原来没有的,fopen("table.txt","w")会生成新文件。 [quote=引用 9 楼 u013190286 的回复:] 最后再问下,你的text文件是跟.c文件放在一起的,是这样吧?谢谢了 [quote=引用 8 楼 KenZhang1031 的回复:] 可能你在fprintf之后看的,文件可能还在缓冲区里,没更新到文件里,你在fclose之后再看。 [quote=引用 6 楼 u013190286 的回复:] [quote=引用 3 楼 KenZhang1031 的回复:] 你怎么知道文件没打开?应该这么写吧?
 if((fic=fopen("table.txt","w")) != NULL)
{
    printf("file opened\n");  // 文件打开
}
else
{
    printf("file open error\n");  // 文件打开错误
}
先谢谢各位,改完之后试了下,并没有把test的值写入到文件里,麻烦各位再指点下[/quote][/quote][/quote][/quote][/quote]
回复 点赞
mononom 2014年01月17日
那我运行这段程序的时候,它并没有生成新的文件,我也不太明白是怎么回事。我用的是xcode
引用 10 楼 KenZhang1031 的回复:
我没刻意放哪,文件原来没有的,fopen("table.txt","w")会生成新文件。 [quote=引用 9 楼 u013190286 的回复:] 最后再问下,你的text文件是跟.c文件放在一起的,是这样吧?谢谢了 [quote=引用 8 楼 KenZhang1031 的回复:] 可能你在fprintf之后看的,文件可能还在缓冲区里,没更新到文件里,你在fclose之后再看。 [quote=引用 6 楼 u013190286 的回复:] [quote=引用 3 楼 KenZhang1031 的回复:] 你怎么知道文件没打开?应该这么写吧?
 if((fic=fopen("table.txt","w")) != NULL)
{
    printf("file opened\n");  // 文件打开
}
else
{
    printf("file open error\n");  // 文件打开错误
}
先谢谢各位,改完之后试了下,并没有把test的值写入到文件里,麻烦各位再指点下[/quote][/quote][/quote][/quote]
回复 点赞
Mr. Code 2014年01月17日
我没刻意放哪,文件原来没有的,fopen("table.txt","w")会生成新文件。
引用 9 楼 u013190286 的回复:
最后再问下,你的text文件是跟.c文件放在一起的,是这样吧?谢谢了 [quote=引用 8 楼 KenZhang1031 的回复:] 可能你在fprintf之后看的,文件可能还在缓冲区里,没更新到文件里,你在fclose之后再看。 [quote=引用 6 楼 u013190286 的回复:] [quote=引用 3 楼 KenZhang1031 的回复:] 你怎么知道文件没打开?应该这么写吧?
 if((fic=fopen("table.txt","w")) != NULL)
{
    printf("file opened\n");  // 文件打开
}
else
{
    printf("file open error\n");  // 文件打开错误
}
先谢谢各位,改完之后试了下,并没有把test的值写入到文件里,麻烦各位再指点下[/quote][/quote][/quote]
回复 点赞
mononom 2014年01月17日
最后再问下,你的text文件是跟.c文件放在一起的,是这样吧?谢谢了
引用 8 楼 KenZhang1031 的回复:
可能你在fprintf之后看的,文件可能还在缓冲区里,没更新到文件里,你在fclose之后再看。 [quote=引用 6 楼 u013190286 的回复:] [quote=引用 3 楼 KenZhang1031 的回复:] 你怎么知道文件没打开?应该这么写吧?
 if((fic=fopen("table.txt","w")) != NULL)
{
    printf("file opened\n");  // 文件打开
}
else
{
    printf("file open error\n");  // 文件打开错误
}
先谢谢各位,改完之后试了下,并没有把test的值写入到文件里,麻烦各位再指点下[/quote][/quote]
回复 点赞
Mr. Code 2014年01月17日
可能你在fprintf之后看的,文件可能还在缓冲区里,没更新到文件里,你在fclose之后再看。
引用 6 楼 u013190286 的回复:
[quote=引用 3 楼 KenZhang1031 的回复:] 你怎么知道文件没打开?应该这么写吧?
 if((fic=fopen("table.txt","w")) != NULL)
{
    printf("file opened\n");  // 文件打开
}
else
{
    printf("file open error\n");  // 文件打开错误
}
先谢谢各位,改完之后试了下,并没有把test的值写入到文件里,麻烦各位再指点下[/quote]
回复 点赞
Mr. Code 2014年01月17日
我试了,能写进去。
引用 6 楼 u013190286 的回复:
[quote=引用 3 楼 KenZhang1031 的回复:] 你怎么知道文件没打开?应该这么写吧?
 if((fic=fopen("table.txt","w")) != NULL)
{
    printf("file opened\n");  // 文件打开
}
else
{
    printf("file open error\n");  // 文件打开错误
}
先谢谢各位,改完之后试了下,并没有把test的值写入到文件里,麻烦各位再指点下[/quote]
回复 点赞
mononom 2014年01月17日
引用 3 楼 KenZhang1031 的回复:
你怎么知道文件没打开?应该这么写吧?
 if((fic=fopen("table.txt","w")) != NULL)
{
    printf("file opened\n");  // 文件打开
}
else
{
    printf("file open error\n");  // 文件打开错误
}
先谢谢各位,改完之后试了下,并没有把test的值写入到文件里,麻烦各位再指点下
回复 点赞
mononom 2014年01月17日
先谢谢各位,改完之后试了下,并没有把test的值写入到文件里,麻烦各位再指点下
回复 点赞
初見的畫面 2014年01月17日
问题呢 是因为你把赋值符号= 写成了比较号==。
回复 点赞
Mr. Code 2014年01月17日
你怎么知道文件没打开?应该这么写吧?
 if((fic=fopen("table.txt","w")) != NULL)
{
    printf("file opened\n");  // 文件打开
}
else
{
    printf("file open error\n");  // 文件打开错误
}
回复 点赞
derekrose 2014年01月17日
好好看书或例子
回复 点赞
lpcads 2014年01月17日
FILE * fic=fopen("table.txt","w"); if(NULL!=fic) printf("file open");
回复 点赞
发动态
发帖子
C语言
创建于2007-09-28

3.2w+

社区成员

24.0w+

社区内容

C语言相关问题讨论
社区公告
暂无公告