错误是:请求成员“a”的内容不是结构或联合。
#include<stdio.h>
typedef struct mia {
int a;
}hola;
typedef struct m {
hola **r;
}bic;
int main() {
bic y;
scanf("%d", &(y.r->a));
printf("%d", (y.r->a));
return 0;
}
最佳答案
您需要一个更复杂的语法来完成此任务:
int main()
{
hola x;
hola *ptr = &x;
bic y = { &ptr };
scanf("%d", &((*y.r)->a));
printf("%d\n", (*y.r)->a);
printf("%d\n", ptr->a);
printf("%d\n", x.a);
return 0;
}
输入
100
输出
100
100
100
注意,您可以取出
hola *
指针:hola *ptr = *y.r;
printf("%d", ptr->a);