啥?看了就会 [C语言]指针与结构体的基础

        指针注意事项:每运行一次程序都会随机分配给变量一个地址空间,运行完后就释放了 再次运行的话就又重新分配一个地址  所以同一变量每次运行时他的地址是不一样的

指针:学习指针之前要了解什么是地址  32位机器 代表有三十而根地址线 每一根地址线有通电与断电两种状态 用1代表通电 用0代表断电   像这样表达的话就把电信号转化为数字信号  从三十二个零到三十二个一 每一个数都代表着一个地址 则一共就有2的三十二次方个地址  然后再为每个地址一个字节的存储空间

 %p是专门用来打印地址变量的

int* p=&a  int*表示p执行的对象是int型变量的地址  命名变量为p  在p中存放的是a的地址

 *pa 中*为解引用操作表示通过pa里的地址找到a

 存放地址时存放的只是第一个地址(知道第一个地址就能知道该变量的全部地址)所以用sizeof()来打印 不同类型地址的长度时 无论你是short  longlong  如果是32位机着打印长度位4 若果为64位机则打印长度位8

       结构体  struct       

   1,  结构体名是定义一个结构体的类型(就如char  int一样一种类型)

2,还要个该结构体定义一个名字stu就是该结构体的名字

3,结构体的初始化                                                 ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​                                                                                                                                                    ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​              

在打印结构体中的成员时可以使用3种方法  1 ,   结构体变量名称.成员名(stu.name)

                                                                      2,      先设置一个结构体的地址变量  (*pstu).name

                                                                        3, 先设置一个结构体的指针    pstu->name  ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值