c语言间接级别不同_C语言指针那些事儿~~

本文深入探讨C语言指针,解释其含义、特殊性及操作方式。通过文字描述、代码解析和图例展示,阐述指针的内存占用、取地址与间接寻址运算符,以及指针类型对内存访问的影响。同时,介绍了指针涉及的内存布局,帮助理解指针的复杂概念,如指针的指针、指针数组和函数指针。
摘要由CSDN通过智能技术生成

bc068e182a07debf9eaf3544993c71eb.png

“指针”一直以来都是初学者理解和掌握C语言的一大障碍,“指针”作为C语言的核心内容,如果不掌握指针的相关知识,就不能说是学会了C语言。

本文将通过文字描述+代码解析+图例展示的方式,详细解释C语言指针的含义,以期拨开指针之迷雾、得见C语言之精髓。

首先,“指针”是C语言定义的一种特殊的数据类型,众所周知,任何数据类型都要占用一定的内存空间,比如'char'类型占用一个字节内存、'short'占用2个字节内存等。指针作为一种数据类型,也占用一定的内存空间:32位机器上占用4字节,64位机器上占用8字节(不讨论CPU、操作系统、编译器位数不同的情况~~)。

那么,指针的“特殊”又是指什么呢?

我们知道,当我们定义一个'int'类型的变量时,可以给这个变量赋值不同的数值,当使用这个变量时,直接使用变量名即可。

但是,对于指针的操作,则必须通过两个特殊的运算符:‘&’— 取地址运算符和‘*’— 间接寻址运算符。

这也就是指针特殊的地方,指针本身占用的那块内存里面,存放的是另外一块内存空间的地址,我们不能直接使用指针的内容。当给指针赋值的时候,需要使用‘&’运算符获取另外一个变量的内存地址——这也正说明了指针占用的内存空间的大

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值