C++中的转义序列用单引号括起来,而不是用双引号括起来

Escape sequence in C++ enclosed in single quotes instead of double quotes

本文关键字:起来 单引号 C++ 转义序列      更新时间:2023-10-16

我使用C和C++已经有一段时间了,我只是偶然发现一个程序有单引号,就像它是一个字符('\n')一样。它很好地达到了目的,我的假设是由一组字符组成的字符串的行上的东西,并且是一个字符,因此没有任何区别。我的两个问题是:

  1. 为什么这种方法不受欢迎
  2. \n是否真的像我想象的那样是一个字符

请参阅"转义序列"。'n'泛指换行符。在ASCII中,这是代码10(0x0A)。所有C派生语言(C++、Java、JavaScript,还有Prolog、Bash、Python等)都使用'n'作为换行符的转义序列。

它们是单个字符,称为控制字符。我们需要能够看到并键入它们,以便将它们写成键盘上可用的可见字符的组合。

"\n"answers"\n"之间的关键区别在于,"\n"是一个带有换行符的字符串(即由两个字节组成的缓冲区:0x0A和0x00,0x00是C字符串中的标准行尾指示符),而"\n"只是常量0x0A。