0

私の現在のコードは次のとおりです。

char* message = new char[256];

    cin.getline(message, 256);
if(message[0] == 's' && message[1] == 'a' && message[2] == 'y' && message[3] == ' ')
{
    cout << message << endl;
}

最初の4文字が「say」の場合にのみ印刷されるように設定しようとしていますが、正常に機能しますが、「say」を削除する方法も理解する必要があるため、その人が望んでいたものだけが表示されますよく言う。私がしていることを心に留めておいてください。それはcharでなければなりません。私がいる状況では文字列を使用できません。誰かがこれを行う方法を理解するのを手伝ってくれるなら、私は非常に感謝します。

4

2 に答える 2

6

単に印刷するmessage + 4

cout << (message + 4) << endl;

次に、std::stringを使用するように書き直します。

于 2012-12-15T21:50:34.687 に答える
5

CコードのC++バージョンは次のとおりです。

std::string message;
cin >> message;
if ( message.substr(0,4) == "say " )
     cout << message.substr(4);

真剣に、1つを選んでください。CがC++であると信じるのはやめましょう。C ++を作成している場合は、C++を作成します。

于 2012-12-15T21:51:29.743 に答える