首页

文章

c语言的变量名

发布网友 发布时间:2022-02-28 23:50

我来回答

2个回答

热心网友 时间:2022-03-01 01:20

变量名不占空间
变量:用来标识(identify)一块内存区域,这块区域的值一般是可以更改的,这就是它“变”的由来,但是我们可以通过使用如const等一些修饰符号来限定这一内存区域的操作特性(characteristic),即变量的操作特性。用const修饰的使变量不能更改的就和常量一样的变量叫做常变量。
变量名:是一个标识符(identifier),用来指代一块内存区域,即变量,使用变量使我们操作内存以区域(area),以块(block)为单位,提高了方便性。
你的机器代码中,是不会出现变量名的;变量名是给我们程序员操作内存来使用的。
想想在汇编年代,没有变量名,我们操作内存,都是用地址来直接操作的,还要控制区域大小;当然汇编语言已经有了简单的变量。
对于编译器,它会搜集我们的变量名,比如我们定义了一个全局的int a;那么编译器都为我们做了什么呢?
它会为程序预留4个字节的空间(假设在32位平台),并把我们的变量名“a”保存进符号表,并用这个符号表的索引对应实际的空间。
如果下面出现b = a;那么它就会根据符号表找到变量的真正的物理位置,取得它的值,赋给b。
这是写编译器需要做的,我们需要建立符号表。
但是实际在汇编层次上,操作的都是地址而已,不存在任何名称了。

热心网友 时间:2022-03-01 02:38

这是人家CPU制作厂商的事情
在WIN系统中(没有用过别的OS)翻译成机器语言,根本就找不到变量名,都是按照地址来操作的
至于数组名可以表示一个地址
int a[100],
int b
a表示地址,b表示值
是C语言这么规定的,这个就是没有什么理由
变量名对应的是什么,程序运行期间是怎么操作变量的?
比如
char str[100]="welcome";
就是welcome存在于程序中(硬盘上)
全局变量大都也凑存储于硬盘上
局部变量,在栈中进行操作

int a;可以翻译为
sub esp,4
你学过汇编之后可以稍微懂一点
视频相册制作软件如何做视频相册? 用word2007自动生成目录后,目录上始终有个“ 更新目录”的框,怎么去... Word2007目录怎么删除正文 手机不能横屏了是怎么回事? 庞贝柱的结构样貌是怎样的? 埃及庞贝柱景点描述 庞贝柱是怎样的历史? 埃及庞贝柱历史追溯 庞贝柱是个什么样的景点? 庞贝柱是为为了答谢谁而建的? 属蛇穿什么转运最旺运 属蛇什么颜色转运最旺 属蛇的人什么颜色转运最旺 英国查理一世时期君主专政的特征 增值税专用发票开错作废证明怎么写 女主为了救男主被拔掉指甲,被活埋,但男主却认错了人,这本小说叫... 什么地方能读到法拉奇的小说男子汉 高级职称有什么待遇 职称高级相当于什么? HUAWEI 华为 AM185 入耳式有线降噪耳机-适用对象 华为FreeBuds Pro有线充版-入耳式真无线动圈主动降噪蓝牙耳机(陶瓷白... HUAWEI 华为 FreeLace Pro 入耳式颈挂式动圈主动降噪蓝牙耳机 曜石黑... HUAWEI 华为 FreeBuds Pro 入耳式真无线动圈主动降噪蓝牙耳机 墨韵白推... 华为Freebuds 3 无线充版半入耳式真无线蓝牙耳机(碳晶黑)-详细介绍... HUAWEI 华为 FreeBuds 悦享版 入耳式无线蓝牙耳机-详细介绍 如何评价华为新旗舰tws耳机freebudspro? HUAWEI 华为 FreeBuds Pro 无线蓝牙耳机推荐 字符串"\\\"ABC\"\\"所占内存字节的长度 怎样挑选千元内的羊绒大衣? 现在思科的CCNA,CCNE,CCIP的考证费分别是多少啊,通过率怎样 长春小飞没有车没有房 碳钢的多久生锈 碳钢多久会生锈 碳钢多长时间会开始生锈 碳钢和铝哪个容易生锈 梦见天宫图是什么意思 光遇2023好友树解锁图鉴 光遇二级节点多少个 ...火柴小女孩》《词语手册》里有很多词语的意思的,求告知 暖融融解释 领淘通淘客助手这个软件怎么样? 淘宝客必备的九大工具有哪些? 电脑里硬盘如何共享怎么实现多台电脑共用一块硬盘 两台电脑一个硬盘两台电脑是否可以同时用一个硬盘 共享电脑硬盘怎样设置局域网电脑硬盘共享 现在下载歌曲好还是不下好 故障码P033D的含义解析 切菜机多功能型切菜机 scanbox三维扫描仪 苹果13没有删除的备忘录怎么恢复? iphone备忘录永久删除怎么恢复?iphone备忘录恢复最近删除文件方法介绍... c语言里++是什么意思 编程语言的历史来源? 关于C语言 C++语言的起源?急!! C语言的起源,作用及好处是什么? C语言的起源和发展 美工主要包括哪些? UI和美工在工作内容上有什么区别吗 美工和设计到底有什么区别 为什么抖音里面我给别人评论了,但是任何人都看不到,只有我自己能看到? 为什么抖音里面我给别人评论了,但是任何人都看不到,只有我自己能看?_问一问 为什么评论了一个人的抖音而其他人看不见我的评论? 为什么我抖音评论别人,别人看不到我抖音评论呢,对方没拉黑? 为什么我抖音评论别人,别人看不到我抖音评论呢,对方没拉黑 为什么抖音里面我给别人评论了,但是任何人都看不到,只有我自己能看到?_问一问 抖音回复别人评论为什么不显示? 抖音为什么看不到别人的评论 为什么刷抖音看不到别人的评论 抖音怎么看不到别人的评论? 为什么我抖音评论别人,别人看不见我的评论,没拉黑 C语言,字符串。要解释结果的由来。 还有去了\0的结果极其由来 c语言转义字符里有种八进制转义,请说明其历史由来以及好处? C语言题目 为什么是20? 求高人解释下面该C语言程序,并说出得出此结果的由来 C++的由来? c语言什么叫结构体 有谁知道“c++”中加号的意思及由来? 小米密码箱忘记密码怎么开锁? Java学习有什么要求 学习java基础需要注意什么 学习Java开发需要有什么基础呢?要有英语基础吗? 学习Java软件开发,需要有基础吗? 电脑经常蓝屏是什么原因???? 学习Java开发的话,需要有什么基础吗? 学习java需要基础吗? JAVA学习的前提需要哪些基础,谢谢! 电脑老蓝屏是怎么回事。 学习Java需要学习什么基础吗?可以直接学吗? 学习JAVA需不需要基础?? 学习Java需要有什么基础呢?没有基础也可以学好Java吗?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com