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

时间:2014-11-06 07:02:40

标签: c++ c

我已经使用过C和C ++了很长一段时间,我碰巧碰到了一个程序,它有一个单引号用于\ n,就像它是一个字符(' \ n') 。它的目的是好的,我的假设是由一个字符数组组成的字符串,\ n是单个字符,因此没有任何区别。我的两个问题是:

  1. 为什么这种方法不受欢迎?
  2. 我实际上是一个单一角色,我假设它是?

3 个答案:

答案 0 :(得分:1)

"Escape sequences"'\n'无处不在意味着换行。在ASCII中,这是代码10(0x0A)。所有C派生语言(C ++,Java,JavaScript,还有Prolog,Bash,Python等)都使用'\n'作为换行符的转义序列。

答案 1 :(得分:1)

它们是单个字符,称为control characters。我们需要能够查看和输入它们,以便将它们写成键盘上可用的可见字符组合。

答案 2 :(得分:1)

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