在之前写操作系统的过程中,我们初步接触了一些寄存器和内存的基本概念,这篇将结合这些知识重新认识下C和Go中的变量的存储
在学习java语言的时候,因为自动回收的特性,我们会关心变量的存储位置问题,是存在栈上,还是存在堆中?本文从汇编代码去看看C和Go是怎么进行变量的存储的,Java的中间还有字节码,时间问题,等后面再探索
下面先看看C和Go的示例程序和对应的汇编代码
下面是C的示例程序如下,main.c文件:
#include
struct Books {
int num;
};
int main() {
int a = getchar();
struct Books book;
book.num = getchar();
char na