我有以下来源:
int main() { 000J; }
使用 gcc 4.8.4 编译时没有错误。我知道有像 L 或 U 这样的后缀,但我没有找到任何关于 J 的信息。
那么它有什么作用呢?
我收到警告:
虚数常量是 GNU 扩展
J后缀是 GNU 扩展,它使文字成为一种类型_Complex。
正如 zenith 所提到的,这是用于编写虚构文字的 GNU 扩展。我真的很想评论j为此目的使用的理由,因为 imallett 想知道,但我没有足够的声誉来评论 zenith 的答案。无论如何,我都会将此作为答案,因为它可能对其他人有帮助。
正如此链接所解释的,两者i和j都可用于使用此 GNU 扩展编写虚构文字。i用于此的原因是显而易见的,但也使用它的原因是j通常j用于表示电气工程和控制系统工程中的虚数单位,以防止混淆,因为i在这些上下文中已经用于表示电流。