C语言基础/指针/结构体

一、指针

1.内存

计算机中程序的运行都是在内存中,内存被分为一个个小的内存单元,每个内存单元的大小是一个字节(1byte)。同时为了有效访问,给内存单元编号,这些编号被称为内存单元的地址符(地址也被称为指针)。 

当电脑访问我们的内存,要通过地址线(1/0的电信号),比如一个32位的电脑,就有32条地址线,就可以管理2^32个地址序列,换算过来就是4GB。

2.&(取地址操作符)

如果我们定义了整型变量a并赋值,一个整型占四个字节,即四个地址,这是我们取出的地址为四个地址中的首地址。(打印地址要用%p

3.当我们要存放地址时,要用int *p=&a,p就是指针变量,p的类型是int **说明p是指针变量,int说明p指向的对象是int类型的。

 4.  *(解引用操作符)

通过p中存放的地址,找到p指向的对象,*p就是p指向的对象。

5.指针变量的大小

可以用sizeof打印指针的大小。不管是什么类型的指针,都是在创建指针变量,指针变量是用来存放地址的,指针变量的大小取决于一个地址存放时需要多大的空间。在64位电脑上就是8个字节,32位就是4个字节。不管是char类型还是int类型的指针都是一样的。

二、结构体(struct)

1.把一些单一类型组合在一起的做法。作用相当于写代码时的定义整型(字符型)用到的int(char)

2.形式:struct 名称{};。这时struct+名称就相当于int,可以用来定义变量,如图,

也可以这么打印:(指针变量指向的对象).成员名或者结构体指针变量->成员名

3.      .操作符的用法:结构体对象+.+成员名    

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

愿望是暴富

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值