2000 – 11

Sia data una variabile dichiarata come

char c;

Ipotizzando che essa contenga un carattere compreso tra ‘0’ e ‘9’, come si trasferisce in una variabile intera v il valore decimale della cifra rappresentata da c?

  1. v=atoi(c);
  2. v=(int)c;
  3. v=c-'0';
  4. v=c;

Soluzione: c.


Osserva

  1. atoi() si applica alle stringhe

  2. restituisce il codice ASCII: 48, 49, …
  3. c-‘0’ = c-48 = 0, 1, …
  4. come b.