打印

为什么任务的堆栈要定义成static呢

[复制链接]
1490|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sinadz|  楼主 | 2012-1-12 18:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
static OS_STK MainTaskStk[MainTaskStkLengh];
static OS_STK Main_TaskStk[Main_Task_STK_SIZE];
如果不定义成static变量就会出现任务信号量发送不对等等问题,如下边的这个问题
http://topic.csdn.net/u/20100828/06/5c60f2ac-c216-4efa-b0ec-dbe2b0cad796.html
上边链接的问题,其实我还没弄懂原因。
因为定义成了static变量,如果MainTaskStkLengh过大就会导致空间申请不了的情况,导致出现很多异常

相关帖子

沙发
gxgclg| | 2012-1-12 18:55 | 只看该作者
static 是一种编程习惯,当变量不在其他文件中使用是 定义为 static 这样避免重名。

比如你可以在文件a中定义一个static的函数,你可以在文件b中定义一个同名的static函数

使用特权

评论回复
板凳
gxgclg| | 2012-1-13 23:04 | 只看该作者
楼主找本C语言的书看看

使用特权

评论回复
地板
hsbjb| | 2012-1-15 18:45 | 只看该作者
static应该是方便全局调用

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

304

主题

2313

帖子

0

粉丝