什么是c语言的'\'运算符

时间:2013-07-05 18:55:28

标签: c

我正在看的例子是这样的:

#define CONTROL_MEM_SIZE    ((CONTROL_ITEM_SIZE * CONTROL_QUEUE_SIZE) +   \
                            portQUEUE_OVERHEAD_BYTES)

我还没有见过运营商'\'。这是什么?

3 个答案:

答案 0 :(得分:8)

它确实不是运营商。它只是一个行扩展 - 它告诉预处理器#define替换文本在文件的下一行继续。

this link处查看#3:

  

续行合并为一条长行。   续行是以反斜杠\结尾的行。将删除反斜杠,并将以下行与当前行连接。

答案 1 :(得分:3)

一行末尾的\字符为line continuation

它告诉预处理器忽略换行符并将以下行视为此行的一部分。

VBScript _ line continuation character比较。

答案 2 :(得分:0)

C11 p5.1.1.2: Translation phase 2

  

每个反斜杠字符(\)紧跟换行符的实例都将被删除,从而将物理源代码行拼接成逻辑源代码行。 [...]