c ++常量值1j是什么意思?

时间:2016-10-17 03:42:12

标签: c++

我正在使用Apple LLVM版本7.3.0(clang-703.0.31)编译一些代码,我发现1j可能是一个常量值。

在下面的代码片段中,我将int b赋值为1j并进行编译。

但是j不是我定义的任何变量。

有人可以解释1j是什么吗?或者它是编译器错误?

非常感谢。

#include <iostream>

using namespace std;

int main() {
    // What is 1j? Why this code can compile??
    int b = 1j;
    cout << b << endl;
    return 0;
}

我看到另一篇文章解释这是一个复杂的数字。

What does the integer suffix J mean?

使用编译器选项-pedantic会引发警告。

1 个答案:

答案 0 :(得分:0)

后缀ij用于复数。