完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
女士们和绅士们,这是社会上大多数人应该能够回答的问题。我使用C18编译器,想知道如何清除一个数组。我有一个数组;char数据[8 ]。不是使用for循环,而是有一种清除所有值的方法。我已经研究并看到了MEMSET,我怎么用这个。谢谢,杰森
|
|
相关推荐
13个回答
|
|
memset(&Data,0,sizeof(Data));http://www.tutorialspoint.com/c_._library/c_function_memset.
|
|
|
|
是的,你可以使用MeMSET()
|
|
|
|
感谢Gunts,有谁知道什么更快,MeMSET还是for循环?
|
|
|
|
memset可能是一个循环,而且您必须添加函数调用开销……我想说:多达几个字节(比如:5)明确地清除RAM,在您的代码中只使用一次,使用不止一次的循环,调用memset()
|
|
|
|
是否有16位版本的MSESET内置到C30编译器?我使用的是DSPIC30F系列,需要清除一个36字节的数组,并且希望一次只做一个单词。
|
|
|
|
|
|
这个函数将把字节数据转换成单词data.w0=0xAAw0=0xAAAACheck,如果长度是奇数,则写入最后一个字节,即5字节>>1=2个单词加上1个奇数。
|
|
|
|
这都假设数组是字对齐的。如果不是,你有50/50的例外机会。
|
|
|
|
真的,只要添加一个奇数地址的位测试,然后写第一个字节,使地址均匀。我只是在喝咖啡的时候粗略地写在这里。
|
|
|
|
这将是更容易和更快的Word对齐数组。我猜想OP正在努力加速一些事情。字节清除第一个最后一个字节的逻辑将最多使用18个写。
|
|
|
|
真正的代码取自对象库MeMyReloC。A.K.A.RealLoistal.地址总是来自MyMyMalc或MeMyCaloc。
|
|
|
|
谢谢你的帮助!我学习了x86汇编,但从未学习过C30汇编。我需要这么做。
|
|
|
|
这是相同的概念。
|
|
|
|
只有小组成员才能发言,加入小组>>
5139 浏览 9 评论
1987 浏览 8 评论
1917 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3158 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2215 浏览 5 评论
708浏览 1评论
598浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
480浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
609浏览 0评论
505浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-8 13:38 , Processed in 1.678158 second(s), Total 71, Slave 64 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号