c语言中对文件进行读写,写入的文件字节数很多,为什么读的时候只能读到固定字节的数,而且只有1千多字节。

2024-12-19 17:02:57
推荐回答(1个)
回答1:

因为读进来的数,你要存放到某个地方,你需要先知道存放的地方有多大,读入数量不能超过这个地方的大小。
例如,存放到 buff, 存放的地方大小是 buff_size (例如 2048字节)
while (fgets(buff,buff_size,fin) !=NULL){ };
fgets 是读一行,行长度不大于 buff_size , buff 里就放 完整的一行,大于,就读入/放入 buff_size 个字节。
fread, 也要提供 大小。
buff_size 数值大小 也可以很大,只要动态分配能成功分配就行,并不限于 1k,2k.