(十七)结构体指针

来源:互联网 发布:linux配置环境变量 编辑:程序博客网 时间:2024/05/21 19:47

结构体指针,语法:

#include <stdio.h>struct Student{int age;char sex;}; void main(){//定义结构体struct Student stu = {22,'W'};//定义结构体指针变量struct Student* stuP = &stu; //通过指针变量访问数据printf("age = %d\n",(*stuP).age); printf("sex = %c\n",(*stuP).sex); }

运行结果:

 

age = 22sex = W

与其他指针变量没有什么区别,就是看一下如何访问结构体里的变量。

值得一提的是,它有一种简易访问变量的写法:

//通过指针变量访问数据printf("age = %d\n",(*stuP).age); printf("sex = %c\n",(*stuP).sex); printf("--------\n"); printf("age = %d\n",stuP->age); printf("sex = %c\n",stuP->sex); 

 如上两种写法等价。

那么如果是一个二级指针呢?

struct Student** stuP

访问的时候这样:

(**stuP).age或者(*p)->age
所以 ,多级指针类似依次类推。 

 


0 0
原创粉丝点击