您的位置 首页 编程

单片机C程序中的指针与指针变量

一个变量具有一个变量名,对它赋值后就有一个变量值,变量名和变量值是两个不同的概念。变量名对应于内存单元的地址,表示变量在内存中的位

一个变量具有一个变量名,对它赋值后就有一个变量值,变量名和变量值是两个不同的概念。变量名对应于内存单元的地址,表明变量在内存中的方位,而变量值则是放在内存单元中的数据,也便是内存单元的内容。变量名对应于地址,变量值对应于内容,应以差异。
例如界说一个整形变量int x,编译器就会分配两个存储单元给x。假如给变量赋值,令x=30,这个值就会放入对应的存储单元中。尽管这个地址是由编译器分配的,但咱们是无法事前确认的,但可以用取地址运算符&取出变量x的地址,例如取x变量的地址用&x。

&x便是变量x的指针,指针是由编译器分配,而不是由程序指定的,但指针值可以用&x取出。

假如把指针(地址值)也作为一个变量,并界说一个指针变量xp,那么编译器就会别的拓荒一个存储单元,用于寄存指针变量。这个指针变量实际上成了指针的指针,例界说:
int *xp

经过句子xp=&x把变量x的地址值,存于指针变量xp中,现在拜访变量x有两种办法,一是直接拜访,别的是用指针直接拜访:*xp

在int *xp中的*和*xp中的*所代表的含义不同,int *xp中的*是对指针变量界说时作为类型阐明,而*xp中的*是运算符,表明由xp所指示的内存单元中取出变量值。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/biancheng/319235.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部