Tag: 命名约定

什么构成“有效”C标识符?

在@Zaibis建议(和我自己的答案 有关宏名称的有效字符是什么? ,以及++(和其他unicode字符)在g ++不允许的标识符中 ))… clang允许很多“疯狂”的角色..虽然我一直在努力找到很多押韵或理由 – 至于为什么有些人被允许(🔴ϟツ⌘☁½),而其他人不是(▶︎∀★©)。 例如,以下所有编译A-OK( clang-700.1.76 ) #define 💩 ?: // OK (Pile of poo) #define ■ @end // OK (HALFWIDTH BLACK SQUARE) #define 🅺 @interface // OK (NEGATIVE SQUARED LATIN CAPITAL LETTER K) #define P @protocol // OK (FULLWIDTH LATIN CAPITAL LETTER P) 但以下都导致相同的编译器错误… Macro name must be an identifier. […]