Typecast char -> int
-
hi, hab grad iwie ein brett vorm kopf
, wie krieg ich ein einzeles char zeichen in einen int werT ? folgendes hatte ich vor :int value; char array[200]; //... value = array[0]; // <- Ich will NICHT den Ascii Code haben das ist ja kein Problem, ich will wenn der char wert z.b. bei array[0] = '1'; ist in dem int auch 1 haben! wie geht das ?Gruß
-
FAQ -> Einmal String nach Zahl und zurück
MfG SideWinder
-
jaa hab ich gesehen aber damit komme ich nich weiter ... atof() funtzt da nich ,,,
hast ne idee ?
gruß
-
Liegt wohl daran, dass du . und , vertauschst hast?!
MfG SideWInder
-
bin grad im Stress und erfass grad nich was du mit . und , meinst ... das ist wikrlich wichtig... brauch das für morgen ... Klausur ... und ich haper immer an dieser stelle !! was meisnt du mit . und , ???
bitte

gruß
-
Foxx90 schrieb:
hi, hab grad iwie ein brett vorm kopf
, wie krieg ich ein einzeles char zeichen in einen int werT ?char buchstabe = 'a'; int i = (int)buchstabe;Oder was meinste.
Kannst ja den ganzen String mit ner scheife zerlegen und als int schrieben oder so.
MFG
Ace
-
ja im prinzip ja aber das funktioniert nicht ! ich bekomme dadurch nur den ascii wert... muss ich mir echt den funktions schreiben wo ich alle ascii werte abfrasge??
-
Entweder du schreibst dir einen mehr oder weniger großen switch so wie hier:
int ValueOfChar(char c) { switch(c) { case '1': return 1; //... } }Oder du nutzt aus, dass im ASCII-Code die ganzen Zahlen hintereinander gespeichert sind:
int ValueOfChar(char c) { return c-'0'; }'0' ist dann halt die Nummer von der Null im ASCII-Code, da die Zahlen alle in einer Reihe hinter der Null sind, kriegt man so die jeweils umgewandelte Zahl. Es fehlt halt noch die Bereichsüberprüfung und ich bin mir nicht sicher, ob vom Standard die Verwendung von ASCII garantiert wird...
Felix
-
?! Wtf gehtn hier? Nen int kannst du eigentlich sehr leicht in nen char bekommen ... wir sind hier bei C++ ...
#include <iostream> // nur für std::cout und std::endl ... #include <sstream> // für std::stringstream ... char c = '9'; int value = 0; std::stringstream ss_num; ss_num << c; ss_num >> value; std::cout << value << std::endl;