PDA

Visualizza la versione completa : [C] Intervallo di valori nel case dello switch


RIACK
09-12-2010, 21:04
Per quel che so io, č possibile inserire un intervallo di valori nel case di un switch servendosi di 2 punti (..), come ho fatto nel successivo codice, ma mi da errore sui punti (too many decimal points in number):

P.S. da errore anche se al posto di case 48..57 scrivo case '0'..'9'


do
{
c[i]=getch();
switch(c[i])
{
case 48..57:
if(i<2)
{
printf("%c", c);
i++;
}
break;
case 8:
printf("\b \b");
i--;
if(i<0) i=0;
break;
default:
if(i==0)
{
case '0': exit(1);
}
}
}while(c[i]!=13);
numGiocatori=(c[0]-48)*10+(c[1]-48);

ramy89
09-12-2010, 21:08
I due punti sono verticali :malol:


case 1:2:3:4:
istruzione;

RIACK
09-12-2010, 21:11
verticali O.o ma che stai dicendo? ma hai letto? non ho mica chiesto cosa civa dopo aver scritto case valore.....

ramy89
09-12-2010, 21:24
Sul libro k&r lo fa cosė,per valori anche lunghissimi usa case 1:2:3:ecc...:15.
Che io sappia se gli vuoi dire:"da 48 a 57" non puoi,devi fare tutti i casi.

Loading