打印
[应用相关]

c语言 结构体 、数组的使用,定义的同时必须初始化,否...

[复制链接]
2186|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huangcunxiake|  楼主 | 2018-12-7 09:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
c语言 结构体 、数组的使用,定义的同时必须初始化,否者它们成员的数值会错乱,不是想象的样子



数组

unsigned char password[8]={'0','1','2','3','4','5','6','7'};



结构体

typedef struct
{      
    unsigned char   adjust_temperature_change;
    unsigned char   lock_flag;
    unsigned char   ctrl_Model;
    unsigned char   device_status;
    unsigned char   set_lower_temperature;
    unsigned char   set_upper_temperature;   
    unsigned char   legal_user_num;

}Device_info;

Device_info device_info={0,1,0,0,20,25,0};


沙发
yiyigirl2014| | 2018-12-7 10:51 | 只看该作者
是的,单片机内存小,更应该定义时候初始化

使用特权

评论回复
板凳
晓伍| | 2018-12-11 12:51 | 只看该作者
这个 普及了基本的常识

使用特权

评论回复
地板
八层楼| | 2018-12-11 12:58 | 只看该作者
我极少用结构体 总用不明白

使用特权

评论回复
5
huzi2099| | 2018-12-11 13:00 | 只看该作者
没明白你想说啥,后面再初始化也可以呀

使用特权

评论回复
6
观海| | 2018-12-11 13:01 | 只看该作者
结构体大小如何确定呢

使用特权

评论回复
7
wakayi| | 2018-12-12 12:51 | 只看该作者
除了结构体 还有一个什么体来着?

使用特权

评论回复
8
renzheshengui| | 2018-12-12 12:54 | 只看该作者
好像叫共用体?

使用特权

评论回复
9
heimaojingzhang| | 2018-12-12 13:24 | 只看该作者
在使用的时候进行赋值不可以吗

使用特权

评论回复
10
huangcunxiake|  楼主 | 2018-12-18 18:23 | 只看该作者
heimaojingzhang 发表于 2018-12-12 13:24
在使用的时候进行赋值不可以吗

其实你什么时候赋值都不如定义时候,这个时候赋值就是烧录进芯片程序的时候写入的内容,而你后面的赋值是程序运行时候的赋值。你说哪个靠谱?肯定是先赋值的靠谱,这样内存中不会存在不确定数据。

使用特权

评论回复
11
xinpian101| | 2018-12-18 18:49 | 只看该作者
反正我学的时候老师也是这么说的。让定义时候起码给赋值个0

使用特权

评论回复
12
xinpian101| | 2018-12-18 18:52 | 只看该作者
如果不知道刚开始赋值什么就给个0

使用特权

评论回复
13
heimaojingzhang| | 2019-1-1 16:20 | 只看该作者
huangcunxiake 发表于 2018-12-18 18:23
其实你什么时候赋值都不如定义时候,这个时候赋值就是烧录进芯片程序的时候写入的内容,而你后面的赋值是 ...

我觉得分不出来哪里靠谱不靠谱 差不多都

使用特权

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

本版积分规则

204

主题

3478

帖子

10

粉丝