这是考试中的一个问题,但没有明确说明原因。这是一个对/错类型的问题;
存在一个类型为float的值x,该值保持:x + 1 == x ...
没错 为什么呢?
我想这与类型转换有关吗?但是我无法想象这将如何工作。
从家庭作业中获得了这段代码。我应该弄清楚的值是多少&y[0] == &x.a。顺便说一句,抱歉,格式化不正确,我已尽力了。
所以我的方法是 y[0] = 1和&y[0]装置的地址1,这是0在阵列中?
x.a最让我困惑。它是否表示结构x的元素a?那x.a == 1呢 而且它的地址也将是0?因此,布尔值将作为出来true(1),因为0 == 0。但是解决方案说这是错误的,但是为什么呢?
struct my_struct {
int a;
double b;
int c;
};
my_struct x = { 1, 2, 3 };
int y[] = { 1, 2, 3 };
Run Code Online (Sandbox Code Playgroud)
我期望输出,1但显然是0,但是为什么呢?