三卦造成的可能陷阱

Version >= C99

在編寫//分隔註釋時,可能會產生影響其預期操作的列印錯誤。如果有一種型別:

int x = 20;  // Why did I do this??/

最後的/是一個錯字,但現在將被解釋為\。這是因為 ??/形成了一個字形。

??/三字母實際上是\的簡寫符號,它是行連續符號。這意味著編譯器認為下一行是當前行的延續,即註釋的延續,這可能不是預期的。

int foo = 20; // Start at 20 ??/
int bar = 0;

// The following will cause a compilation error (undeclared variable 'bar')
// because 'int bar = 0;' is part of the comment on the preceding line
bar += foo;