次のエラーが表示されます...
オペランドのタイプに互換性がありません( "char"と "const char *")
... ifステートメントを実行しようとしたとき。入力値を格納する方法を理解していないと思いますが、一致する型にキャストできるかどうかはわかりませんか?
再現するコードの例は次のとおりです。
char userInput_Text[3];
if (userInput_Text[1] == "y") {
// Do stuff.
}
何が原因なのかわかりません。 1つのタイプがcharで、もう1つのタイプはconst charポインターであるように見えますが、私にはわかりません。参照のため、このエラーは配列を使用していない場合にも発生します)。
そして、ヒント/フィードバックをいただければ幸いです。
二重引用符は、C++でのc-stringのショートカット構文です。単一の文字を比較する場合は、代わりに単一引用符を使用する必要があります。コードを次のように変更するだけです。
char userInput_Text[3];
if (userInput_Text[1] == 'y') { // <-- Single quotes here.
// Do stuff.
}
参考のため:
"x"
= const char *
'x'
= char