c语言,59课,\n 为什么占两个字节?
问题在// 处#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *fp;
if ((fp = fopen("hello.txt", "w")) == NULL)
{
printf("文件打开失败了\n");
exit(EXIT_FAILURE);
}
printf("%ld\n", ftell(fp));
fputc('f', fp);
printf("%ld\n", ftell(fp));
fputs("ishc\n", fp);
printf("%ld\n", ftell(fp));// 这里的值变成7
rewind(fp);
fputs("hello\n", fp); //如果去掉 \n 为5
printf("%ld\n", ftell(fp));
fclose(fp);
return 0;
}
个人理解:
文件写入会在最后自动加入一位
你后面那个是因为后面还有数据 BngThea 发表于 2018-5-9 09:31
个人理解:
文件写入会在最后自动加入一位
你后面那个是因为后面还有数据
这个问题,我问的有点早,后面明白了。在win系统中\n是两个字节。
页:
[1]