Ver Mensaje Individual
  #3 (permalink)  
Antiguo 08/01/2012, 11:18
Avatar de aos_26
aos_26
 
Fecha de Ingreso: enero-2012
Ubicación: Vila-seca, Tarragona, España
Mensajes: 5
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Asignar cadena de caracteres en un case. C

Cita:
Iniciado por starfix Ver Mensaje
hola, no se C, se c++ (mas o menos :)), pero lo que veo es que tratas de asignarle a char palo[] una cadena de texto con el signo =, para hacer esto tenes que usar la funcion strcpy:

el switch cambiaria por el siguiente:

Código C:
Ver original
  1. switch (fr+1)
  2.     {
  3.     case 1:
  4.         strcpy(palo, "as");
  5.         break;
  6.     case 2:
  7.         strcpy(palo, "picas");
  8.         break;  
  9.     case 3:
  10.         strcpy(palo, "corazones");
  11.         break;
  12.     case 4:
  13.         strcpy(palo, "trevoles");
  14.         break;

otras cosas:

- Tenes que darle una dimension a char palo[], te recomiendo que le pongas 10 nomas, no necesitas mas.

- la condicion del switch puede ser solamente fr, no es necesario que le sumes 1, y si lo cambias, dentro del switch tenes que cambiar los case por un valor menor en 1 al que tiene. No es necesario que cambies esto, funciona igual.

Saludos y espero que te ande en C.
Muchas gracias!!!

Funciona sin ningún tipo de problemas.

El fr+1 es simplemente por empezar desde 1 :)