分享方式:


編譯器錯誤 C2017

不合法的逸出序列

逸出序列,例如 \t,會出現在字元或字串常數之外。

下列範例會產生 C2017:

// C2017.cpp
int main() {
   char test1='a'\n;   // C2017
   char test2='a\n';   // ok
}

當 stringize 運算子與包含逸出序列的字串搭配使用時,可能會發生 C2017。

下列範例會產生 C2017:

// C2017b.cpp
#define TestDfn(x) AfxMessageBox(#x)
TestDfn(CString("\\") + CString(".h\"\n\n"));   // C2017