Типы операндов несовместимы ("char" и " const char*")
Я получаю следующую ошибку...
типы операндов несовместимы ("char "и"const char*")
... при попытке выполнить оператор if. Я предполагаю, что я не понимаю, как хранится входное значение, хотя я не уверен, могу ли я просто привести его в соответствующий тип?
пример кода для воспроизведения:
char userInput_Text[3];
if (userInput_Text[1] == "y") {
// Do stuff.
}
Я не уверен, что вызывает это. Казалось бы, один тип-это char, а другой является указателем const char, хотя я не уверен, что, для справки, эта ошибка также возникает, когда я не использую массив).
и советы / обратная связь будет высоко ценится.
1 ответов
двойные кавычки ярлыка синтаксис C-строка в C++. Если вы хотите сравнить один символ, вы должны использовать одинарные кавычки вместо этого. Вы можете просто изменить свой код на это:
char userInput_Text[3];
if (userInput_Text[1] == 'y') { // <-- Single quotes here.
// Do stuff.
}
Для справки:
-
"x"
=const char *
-
'x'
=char