其实->
和 .
是一样的意思,都是调用结构体的成员。不过减号大于号 ->
的左边是指针,而点 .
的左边是变量。
#include<stdio.h>
#include<stdlib.h>
typedef struct
{
int a;
} Po;
typedef struct
{
int b;
} var;
int main()
{ // 好像用了typedef,就不用在声明的时候多写一个struct了
Po *aa = (Po*)malloc(sizeof(Po)); // 我也不知道我这里是不是多余地分配了,就将就着理解吧哈哈~
var bb;
aa->a = 1; // 指针调用
bb.b = 2; // 变量调用
printf("%d and %d\n", aa->a, bb.b);
return 0;
}
新手上路,有错误欢迎指出,没有就给个赞呗哈哈哈哈哈哈哈哈~
参考:
1,runoob菜鸟教程typedef
2,不知名老哥的回答
网友评论