4/10/2023

鹏哥C语言:指针与数组(二级指针)——结构体初阶24:08

复习:
int a = 10;
&a //取地址a
int *pa =&a ; // pa是指针变量,一级指针

二级指针

int ** ppa = &pa ; // pa也是变量,&pa取出pa在内存中起始地址赋予ppa
// ** 代表是二级指针
int *** pppa =&ppa ; // 甚至可以有三级指针,存的是ppa的地址
在这里插入图片描述

指针数组

int * parr[5]; // 整形指针的数组,存放指针的数组

结构体

  1. 也是一些值的集合,但是值的类型可以不同,这些值称为成员变量,类型可为指针、标量、数组甚至其他结构体
  2. 结构体的声明
//结构体的声明
struct Stu{
   //成员变量
   char name[20];//名字
   int age;//年龄
   char id[20];
}s1,s2; //s1和s2也是结构体变量
//s1,s2是全局变量
int main() {
   struct Stu s;//
  1. s1和s2也是结构体变量
    s1,s2是全局变量
  2. 结构体变量初始化
    接上个代码块
struct Stu c = {"SO_MAGIC"19"112334"}//注意id是字符类型要加双引号
  1. 访问结构体中的成员 ( 点操作符、箭头操作符(主要用于指针))
printf("%d\n",c.age);
struct Stu * ps = &c;
printf("%d\n",ps->age);
printf("%d\n",(*ps).age);//也可以这样做,两个输出一样

在这里插入图片描述

  1. 结构体传参:例打印结构体
print1( c);//哲理直接写c就可以了,传进去的是c这个结构数组
//下面是方法
void print1(struct Stu t) {
	printf("%s\n%d\n%s", t.name, t.age, t.id);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值