对于 fgets 来说, '/n' 是一个特别的字符,而 '/0' 并无任何特别之处,如果读到 '/0' 就当作普通字符读入。如果文件中存在 '/0' 字符(或者说0x00字节),调用 fgets 之后就无法判断缓冲区中的 '/0' 究竟是从文件读上来的字符还是由 fgets 自动添加的结束符,所以 fgets只适合读文本文件而不适合读二进制文件,并且文本文件中的所有字符都应该是可见字符,不能有'/0'