c语言写了好久了。在最近的项目中发现一个很奇怪的现象。对于int32_t 类型的数组,buf[20],用memset(&buf[0],0,20)做了初始化之后,发现再次进行数据读写的时候,还保留了上次的数据。简而言之,数据没有彻底清零。查了好久 发现自己memset用的不对。最后把程序改为memset(&buf[0],0,sizeof(int32_t)*20),这才回复正常了。感叹这几年啊!真的虚度了!居然还会犯这样的错误呢
memset 引起的程序故障
最新推荐文章于 2023-08-08 16:18:40 发布