写入文件二进制的问题
不录 2003-01-17 07:18:47 void writefile()
{
FILE* fp;
fp = fopen("C:\\test.txt", "a");
if (fp == NULL)
{
return;
}
int c = 10;
fwrite(&c, sizeof(c), 1, fp);
fclose(fp);
}
以上函数在一个文件中写入二进制信息,我打开test.txt(原来为空文件)文件看到的信息为:
0D 0A 00 00 00
如果把int c = 10;改成int c = 9;或int c = 11;其信息为
09 00 00 00 和 0B 00 00 00
后面两个信息是在我预料之内的,但第一个写入的信息我却无法解决其因为为什么是
0D 0A 00 00 00 而不是 0A 00 00 00
我知道可能是我打开文件用的是文本方式,但我还是不知道为什么写入10和写入其他的数字不一样.