首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在范围内使用memcpy或memcmp

在范围内使用memcpy或memcmp
EN

Stack Overflow用户
提问于 2014-01-28 02:08:52
回答 1查看 761关注 0票数 1

在使用memcpy或memcmp时,可以使用范围吗?

代码语言:javascript
复制
char data[900000]; // size 900000
char array[20]; // size 20

if (memcmp(data[50-70], array, 20) == 0) {
    // do thing
}

我希望能够将(20)键数据50-70与array[]进行比较。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-28 02:17:37

memcmp / memcpy只需接受一个指向要比较或复制的数据的指针。

因此,您基本上可以复制或比较任何“范围”,方法是提供一个指针,指向您希望比较的数据的开始和数据的长度,就像上面所做的一样。

按照以下方式调整上面的代码:

代码语言:javascript
复制
if (memcmp(&data[50], array, 20) == 0) {
    // do thing
}

这告诉memcmp开始检查数据数组第50下标的地址,并将其与数组地址的数据进行比较,并检查20个元素。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21395554

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档