Oppure

Loading
11/11/09 16:46
Valerio_Tk_89
Salve, sono nuovo del forum e del c++ e spero di non risultare troppo ignorante... Cercando di realizzare un programma in grado di leggere degli elementi di un'espressione matematica fin quando la funzione è formata da soli numeri tutto va bene perché faccio scanf ("%d%, &numero), ma nel caso in cui uno dei valori sia un parametro, ad esempio k, non so proprio come fare per non farlo salvare in int ma in char... Spero di essere stato in grado di esporre il problema, ringrazio sin d'ora tutti coloro che risponderanno
aaa
11/11/09 16:56
ingMark
innanzitutto ciao :D

Seconda cosa:
parli di scanf nella sezione c++.
scanf appartiene al c, la prossima volta dovresti postare li ;)

Ora arriviamo al tuo problema.
Se ho ben capito non sai come distinguere un int da un char in input.
Nell'header <ctype.h> (se usi c e non c++) ci sono delle comode funzioni
isalpha(carattere) -> controlla se è un carattere alfabetico
isalphanum(carattere) -> controlla se è un carattere alfabetico o numero
isdigit(carattere) -> controlla se è un numero.

Una volta visto che tipo di dato è puoi decidere dove memorizzarlo.
Esistono anche altre funzioni di quel tipo, ma penso che quelle siano le più utili :k:
aaa
11/11/09 16:57
gio97
Innanzitutto benvenuto! Anche se ti saresti dovuto presentare nell'apposita sezione.
Comunque questo non è C++ ma C, c'è una bella differenza: quindi se vuoi usare il C++ utilizza "cin" del namespace std. Se vuoi programmare in C per usare lo "scanf" con i "char" devi usare l'apposito carattere "%c".

EDIT: Mentre scrivevo io IngMark ti ha risposto. :D
Ultima modifica effettuata da gio97 11/11/09 16:58
aaa
11/11/09 21:07
quoto gio97...puoi comunque usare la funzione scanf in c++ includendo la libreria stdio.h
12/11/09 6:07
gio97
Postato originariamente da _mikele_:

quoto gio97...puoi comunque usare la funzione scanf in c++ includendo la libreria stdio.h


In C++ bisognerebbe includere le librerie C utilizzando il carattere 'c' + il nome della libreria senza estensione.
aaa
12/11/09 11:15
Valerio_Tk_89
Ciao, chiedo scusa per l'errore, come già detto sono ancora molto ignorante in materia.
Pertanto in questo messaggio mi limito a scusarmi e vado a proseguire la conversazione nella sezione giusta:). Comunque grazie delle risposte.
aaa