memcmp内存比较,当第一个参数长度小于第三个参数指定的长度时,是否有必要在调用之前加长度判断?
3条回答 默认 最新
- cxsmarkchan 2016-03-17 08:28关注
需要的。
int memcmp(const void *buf1, const void *buf2, unsigned int count);
memcmp的前两个参数是起点,第三个参数是长度。memcmp内部并不会检查你的内存长度,它会按照你给定的长度进行扫描。所以你必须保证count的长度不超过buf1和buf2的长度。或者保证buf1或buf2越界前,memcmp能够返回。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥50 永磁型步进电机PID算法
- ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
- ¥88 找成都本地经验丰富懂小程序开发的技术大咖
- ¥15 如何处理复杂数据表格的除法运算
- ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
- ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
- ¥200 uniapp长期运行卡死问题解决
- ¥15 latex怎么处理论文引理引用参考文献
- ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
- ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?