c - fopen中的r和rb有什么区别

标签 c windows linux file

我试过在C中使用fopen,第二个参数是打开方式。 “r”和“rb”这两种模式往往让我很困惑。看来他们是一样的。但有时最好使用“rb”。那么,为什么“r”存在呢? 详细或举例说明给我听。 谢谢。

最佳答案

您应该使用"r" 打开文本文件。不同的操作系统存储文本的方式略有不同,这将执行正确的翻译,因此您无需了解本地操作系统的特性。例如,您会知道换行符将始终显示为简单的 "\n",无论代码在何处运行。

如果您打开的是非文本文件,您应该使用 "rb",因为在这种情况下,翻译是不合适的。

关于c - fopen中的r和rb有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47236987/

相关文章:

c - 'stripspaces' 从指针生成整数而不进行强制转换

c - 如何从一个函数中检索一个数字以便在另一个函数中使用它?

ios - 关于应用程序的内存布局和一些变量的逻辑地址

linux - 当前目录中文件根目录有 2 个下划线的文件

c - 为什么 %u %d 在 UNIX/LINUX 上不能用于打印地址

c - 调用结构成员时出现段错误 11

c - 用 C 辅助结构封装

python - 如何使用 Python 在 Windows 中修改密码过期时间?

c - 我可以 #include 定义 DWORD 的最小 Windows header 是什么?

windows - 批处理文件中的打印时间(毫秒)