C语言结构体学得不好,碰到个问题,求大佬指点..
题:设
struct
{
int a;
int b;
}x[2]={{1,2},{3,4}}, *p=x;
则表达式 (++p)->a
的值是__________。
答案是3.
请问是怎么得出的3啊?
C语言结构体学得不好,碰到个问题,求大佬指点..
题:设
struct
{
int a;
int b;
}x[2]={{1,2},{3,4}}, *p=x;
则表达式 (++p)->a
的值是__________。
答案是3.
请问是怎么得出的3啊?
3 回答2k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答3.4k 阅读
1 回答1.6k 阅读✓ 已解决
x是存这个struct的数组,数组中有两个struct的元素。*p=x代表p指向了x的第一个struct元素,++p后p指向了第二个struct的元素,即{3,4},所以值是3。 指针++,加的是整个结构体的内存。