C语言中的指定变量的内存地址址是不是不变的

我也是刚学C语言,对于比较细致的地方有点不懂。我想问的是,比如是在定义变量的候就在内存中申请并命名一个存储单元,而这个存储单元难道就是放在内存地址中的吗?帮我逻辑一下,定义... 我也是刚学C语言,对于比较细致的地方有点不懂。我想问的是,比如是在定义变量的候就在内存中申请并命名一个存储单元,而这个存储单元难道就是放在内存地址中的吗?
帮我逻辑一下,定义单元的原理,好ma ?

可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  C语言中的内存地址和存储单元是什么概念

无符号的整数和有符号的正整数都是用二进制原码来表示,而负整数则是使用补码来表示(补码的算法:负数的绝对值的原码安位取反再加一)。举个例子来说吧:

假设机器使用的是16位来存储整数。

本回答由电脑网络分类达人 系统推荐

就好像超市存包的箱子,每一个箱子就是一个存储单元,你可以在里面放你的物品(相当于变量的值),每个箱子都有一个编号(相当于他的内存地址),一个变量通常占用一个以上的并且是连续的存储单元,而这个变量指向第一个单元(比如你把一张地图撕成几块放在编号为10~13的箱子里,而你只记得第一个箱子是10号,并且知道放了4个箱子),这个变量占用的所有内存空间才能表示他的值(你需要把4个箱子里的内容——也就是地图都拿出来才能看到完整的地图)

假定内存是由好多个方格组成(每个方格代表1位),当你定义了一个变量的时候,他会在内存空闲区域占一个区域(标示被占用,别人不能动了)。至于占多少个格,要受到你定义的变量类型影响。比如int型占用2字节就是8位,也就是8格,你变量的名字连接着这几个格子的第一个格子的位置。

引用的时候直接找第一个格子位置,然后取对应类型所需的格子。

是在比喻吗?——假定?

我要回帖

更多关于 指定变量的内存地址 的文章

 

随机推荐