到目前为止,我只使用Linux进行编码(基本上是gcc和Kate的命令行)。我想进入Windows编程,因为我有权访问运行Win7的所有功能更强大的机器。
所以我下载了代码块和minGW。 Hello world运行正常,但是当涉及到打印文件时,它只是给我一个空文件。我是否犯了新手的错误?它创建了testfile.txt,但执行后该文件为空。
代码:
#include<stdio.h>
#include<stdlib.h>
int main(int argc, char **argv)
{
FILE *test;
if (test=fopen("testfile.txt","w")==NULL)
{
printf("Open Failed\n");
abort();
}
int i=9;
fprintf(test,"This is a test %d\n",i);
fclose(test);
return 0;
}
答案 0 :(得分:2)
这是不正确的:
if (test=fopen("testfile.txt","w")==NULL)
你的if语句应该是:
if ((test=fopen("testfile.txt","w"))==NULL)
因此文件“testfile.txt”将正确打开,您将获得预期的输出:
This is a test 9