adi*_*c21 0 c++ visual-studio-2010
我想选择是否将结果写入文件,所以我的文件名为fnm,如果是空白(""
)我将不会创建/写入文件.基本上我有:
FILE* f;
if(fnm!=""){
//open file for writing
f = fopen(fnm.c_str(), "a+");
}
/*do some other stuff*/
for(int idx=0;idx<n;idx++){
printf("%d\t\t%d\t\t%d\n", k, idx, A[idx]);
if(f!=NULL){
fprintf(f,"%d\t\t%d\t\t%d\n", k, idx, A[idx]);
}
}
if(f!=NULL){
//close the file
fclose(f);
}
Run Code Online (Sandbox Code Playgroud)
现在,f
实际上并没有NULL
在声明时初始化FILE* f;
.如果我手动初始化它FILE* f=NULL;
,它工作正常,所以这主要是我对默认初始化感到好奇.我之前用谷歌搜索过,但答案是针对C的,他们说它已初始化为NULL
.
归档时间: |
|
查看次数: |
86 次 |
最近记录: |