千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  应聘面试  >  物联网面试题  > 指针变量需要类型的解释

指针变量需要类型的解释

来源:千锋教育
发布人:syq
时间: 2022-08-22 17:20:05 1661160005

  为什么需要类型?它仅仅表示一个地址,无论什么类型的变量,不都是用地址来表示的吗?

指针变量需要类型

  首先要明白,两个重要的概念:

  1.一个地址能存储一个字节,这个概念极其重要;

  2.一个指针永远只能指向一个地址(也就是一个字节),当指向int时,int有四个字节,那么只能指向它的首地址。

  不同角度的理解:

  1. 指针也是一个变量,因此也叫指针变量,那么是变量就需要有类型。它存储在内存中,当访问指针指向的内容时,先去这个指针变量地址处拿到地址,再去这个地址去操作。

  2. 一个指针永远只能指向一个地址(也就是一个字节),当指向int时,int有四个字节,那么只能指向它的首地址。解引用时编译器会根据指针变量的类型来进行,因此int型指针解应用后是整个int变量的值,而不仅仅是那个指针指向的那一个字节处的值,这也是指针变量需要类型的原因之一。

  3. 当涉及到*(p+1)这种操作时编译器也会根据p的类型,自动调整所需增加的地址。如果时int型的p,那么这里加一,实际地址加4。

  如果是char型的p,那么这里加一,地址就是加一。

  更多关于物联网培训的问题,欢迎咨询千锋教育在线名师。千锋教育拥有多年IT培训服务经验,采用全程面授高品质、高体验培养模式,拥有国内一体化教学管理及学员服务,助力更多学员实现高薪梦想。

tags:
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT