stm8数据段和代码段的链接问题
来源:互联网 发布:js中字符串长度函数 编辑:程序博客网 时间:2024/06/04 17:50
在做stm8单片机项目的数据遇到栈不够用的问题。
在主函数里面写了太多的变量,重新定义一个函数来做相关的操作就好。(这样在相应的操作进行时才把相关的变量拷贝到栈中)
全局变量:
.BSS段:存放的是未初始化的全局变量和静态变量(至于具体存在哪里要看链接脚本)。
但是未初始化的全局变量不是可执行模块的一部分,只有当使用它们的程序被调用时(即执行时),才分配空间,声明或定义时并不分配。未初始化的全局变量在运行时被初始化为0。也就是说.BSS段最终还是存在.DATA段里面(不知道这样理解对不对。)
局部变量:
编译器按照内存地址递减的方式来给变量分配内存
int a[10];
for (int i = 0; i <= 10; ++i)
{
a[i] = 0;
}比如上面的例子运行之后会进入死循环,其实就是编译器按照内存地址递减的方式来给变量分配内存的结果。
0 0
- stm8数据段和代码段的链接问题
- BSS段、数据段和代码段
- BSS段、数据段和代码段
- 代码段,数据段和bss段
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- Random Forest算法简介
- build.xml文件
- mysql基本操作指令(三)
- 数据结构——队列
- java继承的理解
- stm8数据段和代码段的链接问题
- 欢迎使用CSDN-markdown编辑器
- 排序算法---冒泡排序
- Android LayoutParams使用总结
- 随机排序
- JZOJsenior1666.【AHOI2009】飞行棋
- 最长公共子上升序列
- 按模糊查询条件排序
- 下一个大数的问题