通常,当我们声明具有数据类型的变量时,即
int temp;
temp将在堆栈中分配4个字节。每当我们使用temp时,就意味着我们指向的是为temp创建的内存。我们可以将温度视为指针吗?因为当我们使用temp时,这意味着我们将间接访问内存中的4个字节。
temp将在堆栈中分配4个字节。
temp的分配位置取决于声明的位置,还取决于编译器。如果您在文件范围内或将其声明为静态,则将在.data或.bss段中分配它。如果您在本地声明它,它将分配在堆栈上或CPU寄存器中。如果编译器想要这样做,它也可能会被完全优化掉。
每当我们使用temp时,这意味着我们指向的是为temp创建的内存
种类,但仅是间接的。生成程序机器代码的编译器会知道变量的分配位置,并在机器代码中使用该地址。
我们可以将温度视为指针吗?
不,它是一个变量,是为存储数据而分配的数据块。
另一方面,指针是为存储地址而分配的数据块。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句