|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Apr 2007
Messaggi: 924
|
[C++]Trasformare un char in int o...
...considerare i valori di char come numeri.
Ciao! Avrei bisogno di utilizzare dei valore assegnati a char come numeri per poterli sommare, moltiplicare e fare insomma tutta quella roba che si fa con i numeri Se io definisco char a='4'; lui me lo prende come "carattere" 4. Se lo imposto come char a=4, lo posso poi riportare in una variabile int? |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2785
|
Credo di sì, non hai provato?
Comunque se hai ad esempio: Codice:
char c='3'; Codice:
char n=c-'0'; |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Apr 2007
Messaggi: 924
|
Non ho provato perchè il sorgente è per microcontrollore e mi si è bruciato il display, quindi per ora vado a tentativi e per "sentito dire"...
Il secondo codice intendi "int n=c-'0';"? E cosa rappresenta il -'0'? Ps. Mi sembra che una volta avevo provato a mettere su char valori senza apici, ma non venivano considerati come numero. Per esempio char c=3;, se poi lo visualizzavo comparivano caratteri casuali (294829476274). |
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2785
|
Allora, i caratteri che rappresentano i numeri da 0 a 9 hanno una certa codifica ma sono comunque consecutivi (0,1,2,3...), se tu al carattere che rappresenta ad esempio lo 0 sottrai sé stesso ottieni il valore numerico 0. Quindi se fai '3'-'0' ottieni 3.
Ho fatto comunque la prova e funziona Quote:
Codice:
printf("%d",c);
|
|
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
|
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Apr 2007
Messaggi: 924
|
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Apr 2007
Messaggi: 924
|
Non è simile a quello che ha detto wingman87?
|
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:28.



















