integer in char
-
Hallo, ich habe folgendes Problem.
Wenn ich eine Zahl habe. z.B. Zahl=4683 (integer)
mit folgenden code:
feld[i]=Zahl % 10 + ' 0 ';
jetzt steht in feld[i] die 3 drinnen.
Meine frage jetzt:
Ist das + '0' zuständig das es von Integer auf char umwandelt ???Wäre sehr dankbar wenn mir jemand auf diese Frage eine Antwort geben kann.
-
muss man nicht -'0' tipen um nen int in nen char zu converten ?
ansonsten sprintf().Gruß Tobi.
-
char x = 5; int a = 5; int c = x + a;char ist das fast das selbe wie int, deswegen kannst damit rechnen

-
jedes zeichen hat auch einen Zahlenwert. siehe z.b. ASCII Tabelle
-
Jo wenn man in der ASCII Tabelle nachsieht wirds einem klar !!
'0' = 48
> wenn ich
feld[i]=Zahl % 10 + 48;
rechne is es das gleiche.
Merci für die Hilfe
-
AJAF schrieb:
Jo wenn man in der ASCII Tabelle nachsieht wirds einem klar !!
'0' = 48
> wenn ich
feld[i]=Zahl % 10 + 48;
rechne is es das gleiche....
.... und leider funktioniert es auf Nicht-ASCII-Maschinen nicht mehr.
Derlei "Mikrooptimierungsgefrickel" würde ich tunlichst meiden.Gruß,
Simon2.