186 16 D:\作业\大一下期末作业\高级程序语言设计\课本练习\第六章\第六章.cpp [Error] invalid operands of types 'int' and '__complex__ int' to binary 'operator<='
时间: 2023-07-06 08:36:01 浏览: 80
这个错误提示是因为你在比较一个 int 类型的变量和一个 __complex__ int 类型的变量的大小关系,而这两个类型是不能直接进行大小比较的。
如果你要比较一个 __complex__ int 类型的变量的大小关系,可以通过比较它的实部和虚部的大小关系来实现。例如,如果要比较 z1 和 z2 两个 __complex__ int 类型的变量的大小关系,可以这样写:
```
if (std::abs(z1) <= std::abs(z2)) {
// ...
}
```
其中,std::abs(z) 函数可以返回一个复数 z 的模长,即 sqrt(real(z)^2 + imag(z)^2)。
如果你只需要比较实部或虚部的大小关系,可以直接使用 std::real(z) 或 std::imag(z) 函数来获取实部或虚部的值,然后进行比较。例如:
```
if (std::real(z1) <= std::real(z2)) {
// ...
}
```
阅读全文