为什么strcmp不能在TI MSP430上工作?

时间:2012-04-25 20:31:47

标签: c++ msp430

我的代码类似于以下内容。无论传递给find_instruction的是什么,返回值总是inst_unknown。

当我使用调试器逐步执行代码时,没有执行任何strcmp调用。 我在绝望中尝试编写自己的比较函数,但这也不起作用。

我也无法在函数调用上设置断点,这表明编译器首先没有编译函数调用。

有人可以解释这种行为吗?

const char* const inst1 = "instruction1";
const char* const inst2 = "instruction2";
const char* const inst3 = "instruction3";
const char* const inst_unknown = "instruction_unknown";

const char* find_instruction(const char* decoded_inst)
{
    if (std::strcmp(decoded_inst, inst1) == 0)
        return inst1;
    else if (std::strcmp(decoded_inst, inst2) == 0)
        return inst2;
    else if (std::strcmp(decoded_inst, inst3) == 0)
        return inst3;
    return inst_unknown;
}

我不认为这是相关的,但我在Eclipse中使用德州仪器的Code Composer Studio和CDT,芯片型号是MSP430F2274。

0 个答案:

没有答案
相关问题