我从书中读到这个概念,当我们尝试使用 fputs() 将\n 写入文件时,fputs() 将\n 转换为\r\n 组合,然后如果我们使用 fgets 读回同一行( ) 发生反向转换意味着\r\n 返回转换为\n。 我不明白这背后的目的是什么?
最佳答案
这是因为 Windows(和 MS-DOS)文本文件应该有以\r\n 结尾的行,而可移植的 C 程序应该简单地使用\n,因为 C 最初是在 Unix 上定义的。
而且不仅仅是 fputs 和 fgets 可以执行此操作 - 文本文件上的任何 I/O 函数,甚至 getc 和 fread,都将执行相同的转换。
关于c - 为什么当我们在文件中写入\n 时它会转换为\r\n 组合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19839883/