整数不写入C中的文件
以下代码运行良好,除了我的输出文件不包含整数10,而是在VIM中打开它时使用的字符^ @ ^ @ ^ @。如果我在textedit(在Mac上)中将其打开,则该文件似乎为空。
有人知道我在哪里错吗?
#include <stdio.h>
#include <stdlib.h>
#define MAX_LINE 256
#define MAX_NAME 30
int main() {
FILE *fp;
char fname[MAX_NAME] = \"test1.dat\";
int x =10;
int num= 0;
if( (fp =fopen(fname, \"w\")) == NULL) {
printf(\"\\n fopen failed - could not open file : %s\\n\", fname);
exit(EXIT_SUCCESS);
}
num= fwrite(&x, sizeof(int), 1, fp);
printf(\"\\n Total number of bytes written to the file = %d\\n\", num);
fclose(fp);
return(EXIT_SUCCESS);
}
没有找到相关结果
已邀请:
5 个回复
刷骸码
:
以ASCII码写数字
渐首洽陈染
的二进制表示形式写入文件,即
要以ASCII格式编写,请改用
。
盛虱
。二进制文件在文本编辑器中通常看起来是空的或奇怪的。
硕歌沙
荒劫娇噬