为什么fprintf在以下示例程序中给出不同的结果?
int main(){
FILE *f;
char buf[512];
char name[128] = {"filename"};
f = fopen(name, "w");
fprintf(f, "asdas\n");
fprintf(f, "asdas\n");
while(1){}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
如果我使用CTRL+ 终止此程序C,我会得到一个名为的空文件filename.
但是,使用
int main(){
FILE *f;
char buf[512];
char name[128] = {"wpa_supplicant.conf"};
f = fopen(name,"w");
while(1){
fprintf(f, "asdas\n");
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
如果我使用CTRL+ 终止这个程序C,我得到文件命名filename,它包含许多带字符串的行asdas.
为什么在第一个示例中字符串没有写入文件,但是在第二个示例中它们被写入文件?