Switch case to compare strings [duplicated]

0

I have a question about the use of the control structure switch since I'm just learning C ++. Can you evaluate catacler chains in a switch ? According to me you can only integer values:

#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
int mes;
cout<<"Ingresa las primeras tres letras del mes que desee\n";
cin>>mes;
switch (mes)
{
    case 'ene':
        {       
    cout<<"El nombre del mes es enero\n ";
    break;
}
case 'feb':
    {
    cout<<"El nombre del mes es febrero\n";
    break;
}
    case 'mar':
        {       
    cout<<"El nombre del mes es marzo\n ";
    break;
}
    case 'abr':
        {       
    cout<<"El nombre del mes es abril\n ";
    break;
}
    case 'may':
        {       
    cout<<"El nombre del mes es mayo\n ";
    break;
}
    case 'jun':
        {       
    cout<<"El nombre del mes es junio\n ";
    break;
}
    case 'jul':
        {       
    cout<<"El nombre del mes es julio\n ";
    break;
}
    case 'ago':
        {       
    cout<<"El nombre del mes es agosto\n ";
    break;
}
    case 'sep':
        {       
    cout<<"El nombre del mes es septiembre\n ";
    break;
}
    case 'oct':
        {       
    cout<<"El nombre del mes es octubre\n ";
    break;
}
    case 'nov':
        {       
    cout<<"El nombre del mes es noviembre\n ";
    break;
}
    case 'dic':
        {       
    cout<<"El nombre del mes es diciembre\n ";
    break;
}
default:
cout<<"No es un mes";
}
system ("PAUSE");
return(0);
}
    
asked by Daniela Torres 27.10.2018 в 05:55
source

1 answer

0

As far as it is not possible, You can evaluate with switch to 1 character or 1 integer but No to a string of characters ... Logically it is a bit impossible to string a character if you think about it. In your case what I would do would be that when I enter, for example, 12, show me that it is December. One more thing, you are using an integer variable to save a character Greetings

    
answered by 27.10.2018 в 08:03