【C语言】第十二天笔记总结

指针

1、指针地址空间

指针:指针变量,用来存储内存地址编号

地址:内存会按照字节进行编号,一个字节就有一个编号。(一般地址表示用的是十六进制,查看地址用%p

空间:分指针本身的空间和指针指向的空间

指针指向谁就保存谁的地址 ,保存谁的地址就指向谁。

2、指针定义

指向对象的数据类型*指针名;

指针对象的数据类型:学过的数据类型都可以,具体看需求

*:代表指针的标记

指针名:自定义

3、指针赋值

指针赋值需要通过变量的形式拿到地址编号,让指针指向该空间,指针本身是存的地址编号,而*指针名是存储指向空间的数据

4、指针本身的大小

指针本身的大小和指向对象类型无关,是和系统有关,当系统为32位时是4个字节,64位是8个字节。

指针只是存地址编号,地址编号和系统的位数有关

5、指针偏移

前提:指针有明确的指向;

指针偏移和指针指向对象类型有关,以它为单位进行偏移;

指针偏移一般用于连续的空间

如:数组、动态内存申请的空间;

两个指针相减:两个指针指向一块连续的空间,指针相减才有意义;

6、数组指针

是指针,指向的对象是数组,指向对象的类型是数组类型

一般用于指向二维数组中的一行

6.1、指针定义格式

普通指针格式:指向对象的数据类型 *指针名;

数组指针格式:元素数据类型 (*指针名)[元素个数]

6.2、什么场景下会使用数组指针

(1)二维数组作为参数传递到函数内部的时候,形参需要设计成数组指针

(2)二维数组传递是数组首元素的地址,首元素使一个一维数组,传一维数组,传一维数组的地址,形参就要设计成数组指针

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值