C语言文件操作(备忘)
在Linux平台下fopen, fwrite, fread, fseek混合使用几点注意(经过测试):
(1) 对于fopen的打开模式,如果想对文件进行定作操作又保留原来数据,应该用”r+”模式(文件一定要存在,注意不是”r”,而”w”会清空原数据),这样可以随心利用fseek进行定位写,如果定位超过文件内容大小,则会在原来文件尾和定位位置之间插入“0”。如果用”a+”或”a”模式,则不管定位是否超过文件大小,定位fseek函数都不会起作用,只会在文件尾追加新写入的数据;
(2) fread进行读时,只要发生读错时,用来保存读取数据的缓冲(即fwrite的首参数)中原来的数据不会丢失,缓冲区还是原来数据;