我无法理解这段代码的输出。
int main()
{
FILE* f, *f1;
f = fopen("mytext", "w");
if ((f1 = fopen("mytext", "w")) == 0)
printf("unable\n");
fprintf(f, "hello\n");
fprintf(f1, "hi\n");
return 0;
}
在我的文本文件中,输出应该是hello,但为什么它没有被写入呢?"unable" 没有被打印到标准输出流(stdout)上。
f1
就是NULL
,并且调用fprintf(f1, ...)
将会失败(如果是这种情况,我很惊讶为什么没有出现分段错误)。 - hmjd