201
3587
1万
资深工程师
例如: int a[15] = {0};
第一种,编译器会把第一个初始化值赋给数组的第一个元素,然后用0赋给其余的元素。如果没有给出初始值,编译器不会去做初始化工作。这样简洁的方式让代码更加高效。
还有一种,就是memcpy函数的使用。例如上面的数组,可以
memcpy(a,0,15);
不过个人在嵌入式的环境下使用,个人建议用第一种,因为感觉使用函数会大费周章,而且这个函数用得不熟经常用错,调BUG成本也高。
最后建议:变量都应该有个初始值。
使用特权
105
1231
3472
中级工程师
cauhorse 发表于 2017-3-24 16:22 int a[15] = {1}; 会是什么情况?
dongnanxibei 发表于 2017-3-24 17:20 就是a[0]=1 其他元素=0
131
2603
7927
高级工程师
发表回复 本版积分规则 回帖后跳转到最后一页
等级类勋章
发帖类勋章
时间类勋章
人才类勋章
16
扫码关注 21ic 官方微信
扫码关注嵌入式微处理器
扫码关注21ic项目外包
扫码关注21ic视频号
扫码关注21ic抖音号
本站介绍 | 申请友情链接 | 欢迎投稿 | 隐私声明 | 广告业务 | 网站地图 | 联系我们 | 诚聘英才 | 论坛帮助
京公网安备 11010802024343号