PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : String in Integer umwandeln...


AtTheDriveIn
2004-05-12, 17:44:18
Hi

Ich steh hier vor einem kleinen Problem. Und zwar habe ich einen String, der mit {'1','2','3') gefüllt ist.

Wie kann ich den jetzt schnell und einfach in den Int-Wert 123 umwandeln?

Es stand doch bestimmt schonmal jemand vor der gleichen Hürde und hat seine Lösung brav als Funktion irgendwo aufbewahrt.
Möglicherweise gibts sowas ja auch schon in einer C-Standard-Header, aber ich finde das nicht...

Also bitte helft mir ;)

PS: Programmiersprache C...

BubbleBoy
2004-05-12, 17:55:50
Ist zwar nicht C sondern Pascal, evtl. kannst du es ja entsprechend umsetzen:


Zahl:=0;
Zeichenkette:='123';

for i:=length(Zeichenkette) downto 0 do
Zahl:=Zahl + Zeichenkette[i] * power(10, (length(Zeichenkette) - i));


Die Zeichenkette wird "von hinten" aufgerollt und jede entnommene Ziffer entsprechend ihrer Stelle mit 10^x multipliziert und dann zu der bereits extrahierten Zahl hinzuaddiert.

Metal Maniac
2004-05-12, 18:08:05
int atoi ( const char * string );

Ist in stdlib.h deklariert. Gibt auch noch atof für double und atol für long.

Brillus
2004-05-12, 18:08:21
scanf? ist der zu langsam habe noch niemals richtig damit gearbeitet

AtTheDriveIn
2004-05-12, 18:25:31
Original geschrieben von Metal Maniac
int atoi ( const char * string );

Ist in stdlib.h deklariert. Gibt auch noch atof für double und atol für long.

Genau das hab ich gesucht!
:up: