我正在学习C的文件处理,但遇到了一些问题。 我写的代码如下
# include <stdio.h>
# include <stdlib.h>
int main(void)
{
FILE * file;
errno_t err = fopen_s(&file,"f.txt","r");
fseek(file, 0, SEEK_END);
int size = ftell(file);
fseek(file, 0, SEEK_SET);
char *tmp;
tmp = malloc(size);
printf("%d\n", size);
for (int i = 0; !feof(file); i++)
{
fread(tmp + i, 1, 1, file);
size = i + 1;
}
printf("%d\n", size);
fclose(file);
free(tmp);
return 0;
但是,大小输出不相同(第一:78,第二:76),这是什么原因呢?