• ベストアンサー

簡単なstringの使い方。

int main() { char answer[6]; cout <<"あなたは学生ですか?\n"; cin>> answer; //ユーザーはここでYESと入力 if(anser =="YES"){ cout<<"学生証を提出してください。\n"; } return 0; } このようなプログラミングでYESと入力しても "学生証を提出してください。”が出てきません。 もしこれを char answer にしてYとだけ入力するようにすると動きます。 なぜYESと入力するようにするとうまくいかないのか、 どなたかわかる方大至急よろしくお願いします!!

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

#include <iostream> #include <string> int main() { std::string answer; std::cout << "あんたガクセー? " << std::flush; std::cin >> answer; if ( answer == "YES" ) { std::cout << "学生証見せて!" << std::endl; } return 0; }

pinoko2003
質問者

お礼

またもや、epistemeさん ありがとうございます。感謝 感謝。

その他の回答 (1)

  • nitscape
  • ベストアンサー率30% (275/909)
回答No.1

おそらくanswerというアドレスと比較しているのだと思います。 if(::strcmp(answer,"YES") == 0) としたらどうでしょうか?

pinoko2003
質問者

お礼

ありがとう。ございます。 そのように入力したらちゃんと動きました!

関連するQ&A