今天凌晨无聊逛CSDN论坛的时候发现了这样一个帖子:
楼主使用fopen系列函数以“r+”的模式打开一个写有“abcdefg”字符串的文件,循环fgetc、printf,最后fclose,程序显示出“abcdefg”没有问题。但再次打开文件,先fputc(‘Z’, fp),然后循环fgetc、printf,最后fclose,这就出问题了。
问题表现为两个方面:一是printf出来的字符串不是预期的“bcdefg”,而是很多“屯”的字样;二是原文件也并不是预期的“Zbcdefg”,而是“Z屯屯屯…”。