C语言标识符的存储问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言标识符的存储问题相关的知识,希望对你有一定的参考价值。
例如:话说定义了int num这个变量,计算机会在内存中分配一块地址用于存储num的内容。我想问一下,那么num这个名字是被存在哪里,如何存储?num这个标识符和num的地址之间如何被联系和工作的?求高手解答。
这个详细的要看编译原理了,你可以找相关资料来看。大体是这样的一个过程(以win下的编译过程说明):1. 编写C源文件。这时候你定义了变量 num
2. 编译源文件成为中间 obj 文件,obj文件有符号表,记录符号和地址的对应关系
3. 链接中间文件生成可执行文件 exe 文件,将符号用地址替换掉
可见,最初源文件只有符号,然后编译后有符号和地址的对应,最后只有地址了,没有符号。 参考技术A 不需要存储变量的名字
以上是关于C语言标识符的存储问题的主要内容,如果未能解决你的问题,请参考以下文章