Страницы

Поиск по вопросам

понедельник, 15 апреля 2019 г.

switch case C++

Почему этот код не работает? Неужели в C++ switch не принимает тип string это же чушь какая-то.
string text; cin>>text; switch(text){ case "n": std::cout << "Some output"; break; default: std::cout<<"Input incorrect!"; break; } return 0;


Ответ

string нельзя использовать в switch. Кажется, char* можно, но бесполезно. А вот char - вполне пойдёт, правда, в таком случае все строки, начинающиеся на n будут подходить под условие.
string text; cin>>text;
switch (text[0]) { case 'n': std::cout << "Some output"; break;
default: std::cout<<"Input incorrect!"; break; }
return 0;

Комментариев нет:

Отправить комментарий