首先从代码编译的结果来看首先从代码编译的结果来看
text data bss dec
aaa bbb ccc ddd
首先text 意思就是代码,下方数字就是代码段所占空间大小,单位为字节(byte) text 区存储着代码以及常量、const 声明的常量。
data意思就是数据,下方数字就是数据区所占空间大小,data区存储着初始化了的全局变量以及static声明的赋初值的静态变量。
bss不知道什么意思,下方数字就是该区所占空间大小,该区存储着未赋初值的全局变量和static声明的未赋初值的静态变量,dec只是三者的和,没什么意义。
test区存储在ROM中,ROM也叫做只读存储器,ROM 上的数据在程序运行时不可以改变,只能读,不能写。
data区和bss区存储在RAM 上,RAM 也叫做随机存取存储器,上面的数据在程序运行时既可以读又可以写
其中RAM 上还有堆区和栈区,堆区需要程序开发人员自己分配和释放,栈区由系统自动分配释放。
首先从代码编译的结果来看首先从代码编译的结果来看
text data bss dec
aaa bbb ccc ddd
首先text 意思就是代码,下方数字就是代码段所占空间大小,单位为字节(byte) text 区存储着代码以及常量、const 声明的常量。
data意思就是数据,下方数字就是数据区所占空间大小,data区存储着初始化了的全局变量以及static声明的赋初值的静态变量。
bss不知道什么意思,下方数字就是该区所占空间大小,该区存储着未赋初值的全局变量和static声明的未赋初值的静态变量,dec只是三者的和,没什么意义。
test区存储在ROM中,ROM也叫做只读存储器,ROM 上的数据在程序运行时不可以改变,只能读,不能写。
data区和bss区存储在RAM 上,RAM 也叫做随机存取存储器,上面的数据在程序运行时既可以读又可以写
其中RAM 上还有堆区和栈区,堆区需要程序开发人员自己分配和释放,栈区由系统自动分配释放。
举报