找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4398|回复: 4
打印 上一主题 下一主题
收起左侧

求高手详解 static INT8U Send_buf[10]={0};

[复制链接]
跳转到指定楼层
楼主
ID:47485 发表于 2014-10-30 09:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
static INT8U Send_buf[10]={0};
我的理解: 是把INT8U Send_buf[10] 这两个变量声明为静态类型static 可不可以把类型设为其它的类型?比如动态类型 auto
*(Str+i)=(INT8U)(xorsum>>8);
*(Str+i+1)=(INT8U)(xorsum & 0x00ff);
这两代码看得我一头雾水啊 求详解啊


9600波特率在串口通信中起什么作用呢?不设置波特率会怎样呢?本人初学 请高手指点迷津 谢谢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:44262 发表于 2014-11-2 01:51 来自手机 | 只看该作者
这肯定是不可以的,楼主可百度一下静态变量和auto的区别就知道了
回复

使用道具 举报

板凳
ID:51088 发表于 2014-11-4 12:48 来自手机 | 只看该作者
全局变量声明之前加上static,就是静态全局变量。全局变量和静态全局变量都是静态存储的;在存储上无区别。区别在于他们的作用域;全局变量的作用域是整个源程序,当源程序有多个源文件组成时,全局变量在各个源程序文件都是有效的;而静态全局变量怎被限制了作用域,只在定义该变量的源文件内有用在同一程序的其他源文件不能使用! 还有静态全局变量只初始化一次,防止在其他源文件调用!而全局变量可以再其他源文件初始化!!
回复

使用道具 举报

地板
ID:51088 发表于 2014-11-4 12:56 来自手机 | 只看该作者
静态变量是一种生存期为整个源程序的量。虽然离开定义它的函数后不能使用,但如再次调用定义它的函数时,它又可继续使用,而且保存了前次被调用后留下的值。
回复

使用道具 举报

5#
ID:235168 发表于 2017-9-23 20:45 | 只看该作者
static INT8U Send_buf[10]={0};我编译老是出错,提示error c129:missing";"before "Send_buf"
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表