C指针3
#include <stdio.h>
#include <stdlib.h>
typedef struct{
int age;
char* name[20];
} student;
int main(){
student lisa = {18,"lisa"};
/*
* 结构体成员在存储空间中是连续的
* */
printf("%d\t%d\n",&lisa.age,&lisa.name);
/*结构体的地址就是结构体首个成员的地址*/
student* p = &lisa;
printf("%d\n",p);
printf("%d\n",p+1);
/*
* 结构体指针访问成员的方式,使用 ->符号
* */
p ->age = 20;
printf("%d\n",p->age);
/*以下三种方式改变结构体成员的值都可以*/
p->age = 20;//结构体指针指向成员
printf("%d\n",p->age);
lisa.age = 21;//结构体变量点成员
printf("%d\n",p->age);
(*p).age = 22;//*p和lisa是等数
printf("%d\n",p->age);
fflush(stdout);
}