关于内存和空间的几件事

类型系统

大部分静态类型语言的类型在编译时检查,编译后的机器语言并没有类型概念,取而代之的是对某个内存地址的字节/字等操作。

初始化变量

一般来说,主动分配的在堆空间,全局与静态变量在堆空间。所以声明char c*='hello'同时占用了栈空间与堆空间。

栈、堆

机器语言层面只会操作内存地址与字,所以栈堆是库函数或者操作系统提供的一种抽象。

只声明结构体,会占用内存吗

描述信息会占用存储空间,但没有实例化不会占用内存空间。

发表评论

电子邮件地址不会被公开。