【发布时间】:2011-03-19 07:06:59
【问题描述】:
我正在编写一个程序来计算空格、制表符和换行符。我记得制表符和换行符的转义序列是什么,但是空白呢? \b?还是那个退格?
【问题讨论】:
-
@sipwiz - 虽然 \0x20 通常可用于空格,但需要担心不同字符编码的问题。并非所有 8 位编码都是基于 ASCII 的,如今的字节流可能是编码的 unicode 字符串。 \0x20 当然对于 UTF-8 是正确的,但对于其他一些编码则不正确。这些可能使用其他类型而不是 char 数组来表示,但不一定 - char 数组作为字节流是 I/O 处理的常见模式,无论字节表示什么。
-
@Steve314 如果 OP 使用的是非 ASCII 或非 UTF8 编码,那么一个不错的选择是他已经知道他的问题的答案,因为他已经有几个箍了跳过:)。
-
@sipwiz - 代码被回收和移动。关键是代码的可移植性很好。无论它是为什么平台编写的,它以后都可能在其他平台上运行。
标签: c escaping whitespace space kernighan-and-ritchie