我在 C 中使用 fopen 将输出写入文本文件。函数声明是(ARRAY_SIZE
前面已经定义了):
void create_out_file(char file_name[],long double *z1){
FILE *out;
int i;
if((out = fopen(file_name, "w+")) == NULL){
fprintf(stderr, "***> Open error on output file %s", file_name);
exit(-1);
}
for(i = 0; i < ARRAY_SIZE; i++)
fprintf(out, "%.16Le\n", z1[i]);
fclose(out);
}
我的问题:
在使用 MVS2008 编译时,我收到警告:warning C4996: 'fopen': This function or variable may be unsafe。考虑改用 fopen_s。我没有看到太多关于
fopen_s
我可以更改代码的信息。有什么建议么?可以指示
fprintf
以所需的数值精度将数字写入文件吗?如果我正在使用long double
,那么我假设我的答案在小数点后 15 位之前都是好的。我对吗?