4

私はすでにstrcmpとlstrcmpを試しました。strlenでやろうとしたのですが、うまくいきませんでした。これが私が持っているものです

void check(LPCSTR lpText)
{
    if( strmp(lpText, "test") == 0)
    {
        MessageBoxW(0, L"equal", 0, 0); 
    }
    else
    {
        MessageBoxW(0, L"not equal", 0, 0); 
    }
}

何があっても常に1を返します。また、設定の文字セットは、重要な場合は[マルチバイト文字セットを使用する]に設定されています。

4

1 に答える 1

6

幅の広い文字列を使用している場合は、幅の広い文字列リテラルと比較してみてください。

if (lstrcmp(lpText, L"test") == 0) {
    // stuff
}

編集:間違った文字エンコードを使用していたようです。

于 2012-11-21T19:32:44.607 に答える