gpt4 book ai didi

c++ - memcmp 与直接比较字大小的结构

转载 作者:太空宇宙 更新时间:2023-11-03 10:25:27 24 4
gpt4 key购买 nike

在 C++ 中,比较两个字大小结构(例如 32 位架构中的 4 字节大小)的最有效方法(内存和时序)是什么。假设没有垃圾填充位并且:

struct A, B;

一方面,我可以使用

memcmp(&A, &B, 4)

另一方面,我可以写

struct *pA = &A; struct *pB = &B;

if (*pA == *pB)

谢谢

最佳答案

视情况而定。

这取决于库和编译器……也许还有目标平台。如果这是性能瓶颈,找到最高效的唯一方法是同时编写并比较它们的效率。

如果它不是性能瓶颈(而且它不会),只需编写最简单、最清晰、最容易理解的代码。即:

    if (A == B)

(更不用说上面的代码不必对填充位做出任何假设)。

关于c++ - memcmp 与直接比较字大小的结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37251926/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com