我收到了一个警告
警告:多行注释[-Wcomment]
这是由于我有一个类似的注释造成的
// strings can start with a \ and also end with a \
我理解这个错误,并看到其他关于此主题的SO留言。
我可以很容易地修复警告(通过双引号引用 \s)。
我想知道的是,我注意确保该行不会以 \ 结尾。该行以 \ 结尾,然后是一个空格。这是预处理器剥离我的尾随空格而引入警告吗?
我收到了一个警告
警告:多行注释[-Wcomment]
这是由于我有一个类似的注释造成的
// strings can start with a \ and also end with a \
我理解这个错误,并看到其他关于此主题的SO留言。
我可以很容易地修复警告(通过双引号引用 \s)。
我想知道的是,我注意确保该行不会以 \ 结尾。该行以 \ 结尾,然后是一个空格。这是预处理器剥离我的尾随空格而引入警告吗?
在这种情况下,最好使用连续行合并成一行。
连续行指以反斜杠“\”结束的行。反斜杠会被移除,并且紧接着的行会和当前行合并。
...
连续行尾部的反斜杠通常称为反斜杠换行符。
如果反斜杠和行尾之间有空格,那么该行仍然视为连续行。然而,由于这通常是编辑错误的结果,许多编译器不会将其视为连续行,因此GCC会发出警告。
'\'
而不是 \
作为反斜杠被用作符号而不是连续行指示符。另一种(主观上较差的)选择是在 \
后面放一个非空格字符作为结尾(例如一个点)。
...
,或者使用'\'
代替其中的\
。 - Basile Starynkevitch