推广 热搜: 广场  Java  app  Word  营业  微信公众号  北京代理记账  商城  代理记账  商标交易 

指针地址和指针变量区别 变量名和变量地址之间是什么关系?

   2023-04-28 企业服务招财猫70
核心提示:变量名和变量地址之间是什么关系?变量名是高级语言定义的一种东西,主要用来方便的寻址变量。在编译过程中,每个变量都有一个变量名,每个名对应一个应用,也就是变量的第一个字节地址。也就是说,变量名与其地址是

变量名和变量地址之间是什么关系?

变量名是高级语言定义的一种东西,主要用来方便的寻址变量。在编译过程中,每个变量都有一个变量名,每个名对应一个应用,也就是变量的第一个字节地址。

也就是说,变量名与其地址是一一对应的映射关系。但是编译后变量名是不存在的,所以C必须有一个机制来区分与形式相似的变量名和真实地址。

对于变量A,不加意味着取A的值,加意味着取A在内存中的地址,后一个值只能赋给指针变量。其实后来发现这种设计有一些弊端,这也是为什么Java,C#删除了它们的区分,统一使用引用(和指针略有不同,但机制是一样的)。

地址符的作用,地址符是什么意思?

地址提取的功能是告诉系统定义的变量,该值存储在内存空间中。scanf函数根据这个地址值寻址,然后从这个地址空间中取出我需要的数据值。对于变量来说,变量在内存中的地址只能通过ampa获取,而对于指针变量和数组来说,不需要这种地址获取。

C语言的指针不是地址吗?为什么地址还要区分类型?指针的加法也好难,该怎么理解呢?

类型描述了指向内容的指针的数据长度。为了让你不不正确地操作内容,C语言编译器正在检查类型。

当然,如果能保证逻辑和内容长度的正确性,也可以在C语言层面强制转换成另一种指针类型。

在汇编语言中,没有内容的类型,只有内容的长度。连内容的整数符号都没有说清楚,整数的符号体现体现在操作数据的不同机器指令中。

C语言中指针类型的不同只是为了防止你在语法层面容易出错。

 
反对 0举报 0 收藏 0 打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
合作伙伴
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  冀ICP备2023006999号-8