c - C 编译器如何解释源代码中的空格?

标签 c ascii

c 编译器是否会以某种方式解释源代码中的空格而不是字符串中的空格?我知道 C 编译器将字符串中的空格解释为 ASCI 值。

最佳答案

2018 C 标准第 5.1.1.2 条“翻译阶段”中描述了空白字符的处理。

在第 2 阶段,每个反斜杠后跟一个换行符都将被删除(反斜杠和换行符)。

换行符在第 4 阶段相关,在该阶段执行预处理指令。否则,预处理器标记外部的空白字符(包括字符常量和字符串文字)仅用于分隔预处理器标记。在第 7 阶段,它们被丢弃,或者至少对于翻译 C 程序而言变得无关紧要。

关于c - C 编译器如何解释源代码中的空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59328176/

相关文章:

perl - 音译成 ASCII 时遇到问题

networking - RFC中的ascii图如何生成?

c++ - GetModuleFileNameEx - 是否可以在 char* 而不是 TCHAR[] 中获取路径?

捕获输入而不\n

c - C 中这个表达式 (char *) 是什么意思?

c - 简单的 c malloc

c - 没有 printf 的用户定义函数,返回十六进制值

linux - 解析包含不可打印的 ASCII 字符的文件

c# - 如何获取静态网络摄像头图像

c - 在字符串数组中查找字符串。 (C代码)