Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Aiuto per questo programma
Forum - C/C++ - Aiuto per questo programma - Pagina 2

Pagine: [ 1 2 3 4 ] Precedente | Prossimo
Avatar
gio97 (Ex-Member)
Guru


Messaggi: 715
Iscritto: 25/04/2009

Segnala al moderatore
Postato alle 23:39
Giovedì, 08/04/2010
Vuoi che sia io ad andare giù pesante? Char è sbagliato, si scrive char, INT è sbagliato, si scrive int, le funzione come getchar richiedono, sebbene non abbiano parametri, le parentesi tonde, dopo il while devi iniziare un blocco, lo stesso con lo switch. Dopo il case, ci vanno i due punti, alla fine, il break;

E poi, con il getchar non riconosci proprio nulla, al massimo intendevi come riconoscere il numero contenuto in un char, per far ciò c'è la funzione atoi().

PM
Avatar
gforce (Normal User)
Rookie


Messaggi: 33
Iscritto: 21/01/2010

Segnala al moderatore
Postato alle 14:26
Venerdì, 09/04/2010
La funzione atoi() fa al caso mio. Cercando su internet ho capito che se ritorna 1 vuol dire che converte altrimenti ritorna 0  non converte. La domanda che mi pongo: come faccio a vedere che valore ritorna

PM
Avatar
TheWorm (Member)
Rookie


Messaggi: 24
Iscritto: 13/09/2009

Segnala al moderatore
Postato alle 14:28
Venerdì, 09/04/2010
###
Quote:

Se no è meglio che ti copri un dizionario della lingua italiana, zanichelli e ottimo !
###

Hahahhaa.

PM
Avatar
gio97 (Ex-Member)
Guru


Messaggi: 715
Iscritto: 25/04/2009

Segnala al moderatore
Postato alle 17:22
Venerdì, 09/04/2010
Non è proprio così: se converte beh, restituisce il valore convertito, se non può convertire, restituisce 0. Innanzitutto dovresti assegnarlo ad una variabile, altrimenti puoi fare al volo: n = atoi(s1) + atoi(s2);

PS: Grazie del consiglio di coprare un dizionario, comunque ho già anche lo Zanichelli, il mio consiglio invece rimane valido: comprati un buon manuale, quello Deitel&Deitel è ottimo:

dizionario sta a Zanichelli come manuale sta a Deitel

Ultima modifica effettuata da gio97 il 09/04/2010 alle 17:24
PM
Avatar
gforce (Normal User)
Rookie


Messaggi: 33
Iscritto: 21/01/2010

Segnala al moderatore
Postato alle 18:53
Venerdì, 09/04/2010
impostala così la proporzione dizionario:zanichelli=manuale:deitel

PM
Avatar
gforce (Normal User)
Rookie


Messaggi: 33
Iscritto: 21/01/2010

Segnala al moderatore
Postato alle 19:03
Venerdì, 09/04/2010
purtroppo devo dire che così non funziona:
Codice sorgente - presumibilmente C++

  1. /* atoi example */
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4.  
  5. int main ()
  6. {
  7.   int i;
  8.   char szInput;
  9.   szInput = getchar();
  10.   i = atoi (szInput);
  11.   printf("%d", i);
  12.   return 0;
  13. }


così si:
Codice sorgente - presumibilmente C++

  1. /* atoi example */
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4.  
  5. int main ()
  6. {
  7.   int i;
  8.   char szInput;
  9.   scanf("%c", &szInput);
  10.   i = atoi (szInput);
  11.   printf("%d", i);
  12.   return 0;
  13. }


Perchè ?

PM
Avatar
gio97 (Ex-Member)
Guru


Messaggi: 715
Iscritto: 25/04/2009

Segnala al moderatore
Postato alle 19:25
Venerdì, 09/04/2010
Mi pare che getchar prenda un solo carattere: dovresti fare,
Codice sorgente - presumibilmente Plain Text

  1. while(szInput != '\n'){szInput = getchar()}


PM
Avatar
gforce (Normal User)
Rookie


Messaggi: 33
Iscritto: 21/01/2010

Segnala al moderatore
Postato alle 19:49
Venerdì, 09/04/2010
Testo quotato

Postato originariamente da gio97:

Mi pare che getchar prenda un solo carattere: dovresti fare,
Codice sorgente - presumibilmente Plain Text

  1. while(szInput != '\n'){szInput = getchar()}



non penso !

PM
Pagine: [ 1 2 3 4 ] Precedente | Prossimo