You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

memcmp返回值突然异常的问题排查求助

memcmp返回值突然异常的问题排查求助

各位大佬好,我最近碰到个棘手的问题,想请大家帮忙分析下。我正在用GTest库测试自己实现的几个memcmp函数版本,测试逻辑里会把自己实现的结果和标准库memcmp的返回值做对比,但最近改了代码之后,标准库的memcmp居然开始返回一些意料之外的结果了,这让我完全摸不着头脑。

我已经把所有不影响问题的代码都注释掉了,只留下了关键的测试部分,代码如下:

#include <gtest/gtest.h>

using namespace std::string_literals;

struct MemcmpTestCase {
    std::string s1;
    std::string s2;
    int n;
    int result;
};

std::vector<MemcmpTestCase> testCases {
    { "", "", 0, 0 },
    { "", "1", 0, 0 },
    { "", "1", 20, 0-'1' },
    { "1", "", 0, 0 },
    { "1", "", 20, '1' },
    { "123456789", "", 5, '1' },
    { "123456789", "1234", 5, '5' },
    { "1234...
};

目前我就是搞不明白,为什么之前一直正常的标准库memcmp返回值突然就不对了,有没有熟悉GTest或者memcmp细节的朋友能帮我找找问题所在?

备注:内容来源于stack exchange,提问作者AvidCoder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.16 12:40:28