C 我如何知道在我的环境中以何种方式表示换行符?

C 我如何知道在我的环境中以何种方式表示换行符?,c,linux,C,Linux,我想知道在我的环境中新行表示的ASCII字符, 我怎么检查? 当我通过getchar或scanf读取并检查所读取的ASCII数字时,我得到10。 如何检查换行符在环境本身中表示的顺序 那些“文本感知”I/O函数将对此进行抽象并进行转换,以便'\n'工作 一种方法是创建一个包含一行(空)文本的文本文件,然后以二进制模式重新打开它并检查内容。二进制模式当然会关闭任何此类翻译,并公开原始字节 我不确定在不接触文件系统的情况下如何做到这一点,但我相信这是可行的。大多数情况下,这类内容是静态的,对于特定的

我想知道在我的环境中新行表示的ASCII字符, 我怎么检查? 当我通过getchar或scanf读取并检查所读取的ASCII数字时,我得到10。 如何检查换行符在环境本身中表示的顺序

那些“文本感知”I/O函数将对此进行抽象并进行转换,以便
'\n'
工作

一种方法是创建一个包含一行(空)文本的文本文件,然后以二进制模式重新打开它并检查内容。二进制模式当然会关闭任何此类翻译,并公开原始字节

我不确定在不接触文件系统的情况下如何做到这一点,但我相信这是可行的。大多数情况下,这类内容是静态的,对于特定的目标平台来说总是一样的,因此当然可以在编译时添加知识。

那些“文本感知”的i/O函数将抽象这些内容并进行转换,以便
'\n'
工作

一种方法是创建一个包含一行(空)文本的文本文件,然后以二进制模式重新打开它并检查内容。二进制模式当然会关闭任何此类翻译,并公开原始字节


我不确定在不接触文件系统的情况下如何做到这一点,但我相信这是可行的。大多数时候,这类东西是静态的,对于特定的目标平台,它总是一样的,因此,当然可以在编译时添加知识。

最简单的方法:
\ifdef\u WINDOWS它是CRLF#否则它是LF#endif
。您需要如何处理这些信息?最简单的方法:
\ifdef\u WINDOWS它是CRLF#否则它是LF#endif
。您需要如何处理这些信息?