我想判断两个 struct 指针是否指向相同的值,但我得到了这个错误:
./07ex.c:158:15:错误:二进制表达式(‘rgb’(也称为‘struct rgb_’)和‘rgb’)的操作数无效 返回*x==*y; 下面是 struct 和函数:
typedef struct RGB_ {
float r;
float g;
float b;
} RGB;
bool point_to_equal_values_struct(RGB *x, RGB *y) {
return *x == *y;
}
我是通过这样做才度过难关的:
bool point_to_equal_values_struct(RGB *x, RGB *y) {
if ((*x).r == (*y).r && (*x).g == (*y).g && (*x).b == (*y).b)
{
return true;
}
return false;
}
但我仍然很好奇,为什么编译器会给出这个错误. 提前谢谢!