c++中指针概念及指针变量的大小

78 篇文章 5 订阅
19 篇文章 6 订阅

1.指针的概念
         想要清楚的理解指针概念我们必须先弄清楚数据在内存中是怎样储存的,又怎样读取的。在电脑的内存区里每一个字节都有一个编号,这个编号就是地址。我们在程序中定义一个变量,对程序进行编译时,系统会根据数据的类型分配给这个变量一定长度的空间,如int型分配四个字节。那这四个字节的编号就是这个变量的地址。反过来说这个变量就储存在这个地址内。你可以理解为酒店里的房间号。

        由于通过地址能找到这个变量,可以说地址指向这个变量。就像你住酒店时,你朋友可以通过房间号码找到你。这个地址我们形象化的把他称为指针。

        总的来说一个变量的地址就称为该变量的指针。

        理解了指针接下来我们来讨论一下我们常说的指针变量又是什么呢?

        通过上文我们可以知道指针就是地址,如地址1000是变量 i 的指针。那么这个指针(地址)该怎样储存呢?C语言里定义一个变量专门用来存放一个变量的地址,那么该变量称为指针变量。即指针变量的值是地址(我们在交流中讲的指针通常是指针变量)。

#include<stdio.h>
int main
{
    int a= 10;//在内存中开辟一块空间
    int *p = &a;//取出变量a的地址放入指针变量p中;
    return 0;
}
 
2.指针变量的大小
        在32位的计算机中,地址是32个0或者1组成二进制序列,那地址就得用4个字节的空间来存储,所以一个指针变量的大小就应该是4个字节。

        在64位的计算机中,如果有64个地址线,那一个指针变量的大小是8个字节,才能放下一个地址。

        总结,指针的大小在32位平台上是4个字节,在64位平台上是8个字节。
 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值