21

我正在编写一个程序来计算空格、制表符和换行符。我记得制表符和换行符的转义序列是什么,但是空白呢?\b? 还是那个退格?

4

5 回答 5

24

您的意思是像 in 中的“空白” "a b"?那是一个空格:' '.

这是供参考的转义序列列表。

于 2010-07-21T23:37:32.433 回答
7

如果要检查字符是否为空格,可以使用isspace()函数 from <ctype.h>。在默认的 C 语言环境中,它会检查空格、制表符、换页符、换行符、回车符和垂直制表符。

于 2010-07-21T23:46:04.217 回答
5

空格很简单' ',在十六进制中它存储为 20,它是 32 的整数等价物。例如:

if (a == ' ')

检查整数 32。同样:

if (a == '\n')

检查整数 10,因为\n它是0A十六进制的,即整数 10。以下是其余最常见的转义序列及其十六进制和整数对应物:

code: │   name:                │Hex to integer:
──────│────────────────────────│──────────────
\n    │  # Newline             │  Hex 0A = 10
\t    │  # Horizontal Tab      │  Hex 09 = 9
\v    │  # Vertical Tab        │  Hex 0B = 11
\b    │  # Backspace           │  Hex 08 = 8
\r    │  # Carriage Return     │  Hex 0D = 13
\f    │  # Form feed           │  Hex 0C = 12
\a    │  # Audible Alert (bell)│  Hex 07 = 7
\\    │  # Backslash           │  Hex 5C = 92
\?    │  # Question mark       │  Hex 3F = 63
\'    │  # Single quote        │  Hex 27 = 39
\"    │  # Double quote        │  Hex 22 = 34
' '   │  # Space/Blank         │  Hex 20 = 32
于 2018-10-17T18:43:42.790 回答
2

\b是退格(ASCII 0x8)。对于常规空间(ASCII 0x20),您不需要转义。你可以只使用' '.

于 2010-07-21T23:37:25.413 回答
1

'\b' 是退格键,你不需要空格的转义序列,因为 ' ' 就可以了。

于 2010-07-21T23:37:52.477 回答