困扰很久的问题,C语言里一个变量存在一块内存里,那必然需要有一块内存存储它的地址。它的地址的地址。

一直要存,岂不是没有穷尽了。
2025-04-11 03:29:45
推荐回答(3个)
回答1:

你可以这么理解,它的地址就是内存的编号了;如果非要用另一个地址来存这个编号,那么你得另外创建变量,新创建的这个变量的地址也是一个内存的编号;编译器不会主动给你创建这个变量。

回答2:

你买内存条或者硬盘的时候有没有发现。 你买8G内存 实际上只有7G多。 那些消失的内存就有一部分是存储地址信息的。 也就是地址是常量,你没法修改的。

回答3:

这个问题如何题主学习过编译原理就应该知道
编译器在词法分析阶段会将变量的名字和值生成一个二元组,之后要找到这个变量,查表就可以了,这也是为什么变量必须先声明再使用的原因