首先感谢版主对这个问题的热情解答虽然并未解决问题,所以有必要继续讨论该问题
请看一段程序
#include<stdio.h>
void main()
{
FILE *fp;
if((fp=fopen(“g:\myturboc\gji.txt”,”w”))==NULL)
printf(“file can not open!\n”);
}
其中目录”g:\myturboc”是我在g盘建立的目录,gji.txt是不存在的文件,是我凭空随便编的一个名字。
我使用的是turbo c2.0编译器,我编这段程序的目的是为了上机对文件的打开操作进行实践。
运行程序时发现”file can not open!”字符串并没有显示,如果把gji.txt改为b.txt则可以显示。按照版主的观点把if((fp=fopen(“g:\myturboc\gji.txt”,”w”))==NULL)语句改为
if((fp=fopen(“g:\\myturboc\\gji.txt”,”w”))==NULL)还是不行,
这是为什么,请知道的朋友不吝赐教,我在这里先谢谢了。
>> 本文固定链接: http://www.vcgood.com/archives/1207
#include<stdio.h>
void main()
{
FILE *fp;
if((fp=fopen(“g:\\myturboc\\gji.txt”,”r”))==NULL)
printf(“file can not open!\n”);
}
这样就没错了,知道为什么吗?因为你的打开方式是W,W是只写。这样程序如果检测不到文件存在,就会直接建立这个不存在的文件,而改用R表示只读。那么就会达到你要的效果。
以上是绝对可用的程序。TC2.0下编译通过。