int2str
-
hi!
ich würde gerne einen integer in einen string umwandeln, also quasi "5" statt 5. gibts da eine methode für, oder wie kann ich das anstellen?
-
sprintf
-
thx
-
oder
itoa()
-
Hepi schrieb:
oder
itoa()
were mir neu, dass es itoa im Standard gibt...
-
@Shade
Gibts auch nicht(soviel ich weiß nicht mal im Nicht-Standard :D)
-
Hallo,
AJ schrieb:
[...](soviel ich weiß nicht mal im Nicht-Standard )
doch, der Windows-Header stdlib.h deklariert:
*
Convert an integer to a string.char *_itoa( int value, char *string, int radix );
*oder was meintest du mit "Nicht-Standard"?
Das alles ändert natürlich nichts daran, daß man es nicht verwenden sollte..
MfG
-
Nicht Standard heisst: jeder Compiler macht es anders.
Die meisten werden wohl kein itoa haben - insofern ist die Lösung falsch.
-
Nicht Standard heisst: jeder Compiler macht es anders.
Die meisten werden wohl kein itoa haben - insofern ist die Lösung falsch.
-
@Shade Of Mine:
ich wollte AJ nur darauf hinweisen, daß es itoa gibt (eben für den VC-Compiler), und wenn er Nicht-Standard genauso definiert wie du (wie auch ich es sehe), dann stimmt eben seine Vermutung, daß es das nicht irgendwo gibt, nicht.
Mein Beitrag war also nur als Hinweis gedacht, und eine Lösung stellt er auch nicht dar, denn mein Zusatz
[...]Das alles ändert natürlich nichts daran, daß man es nicht verwenden sollte..[...]
deutete schon an, daß man _itoa aus Portabilitäts-Gründen nicht verwenden sollte
es war also nur auf AJ's Beitrag gemünzt, und nicht als Lösung (im ANSI-C-Forum!) gedacht, oder muß ich hier so aufpassen, daß meine Beiträge nicht mißverständlich "rüberkommen"
MfG
-
@Probe-Nutzer
Sorry, so genau kenn ich die Zusätze von M$ nicht. Glaub dir schon, dass es solch eine Funktion gibt in der VC-stdlib.h. Allerdings hab ich noch keine itoa() im Borland Compiler 5.02 (mit dem ich in der Ausbildung und später auch im Beruf programmiert habe) gefunden. Daher meine Annahme.Zumindest sind wir uns darüber einig, dass man die Funktion itoa() nicht verwenden sollte.
-
AJ schrieb:
Sorry, so genau kenn ich die Zusätze von M$ nicht
besser so :), muß man auch nicht, selbst wenn man unter Windows programmiert...
Man darf aber nicht unterschätzen, daß es immer wieder Entwickler gibt, die _itoa (ärgerlicherweise und unbedacht) einsetzen, das habe ich erlebt, als ich ein DOS-Projekt nach Linux portieren mußte..spätestens seit einem solchen Zeitpunkt wird man itoa & Konsorten nicht mehr einsetzen (wenn man die Fehler, die einem dann vom gcc um die Ohren fliegen, gesehen hat), und das hat mir viel gebracht
AJ schrieb:
Zumindest sind wir uns darüber einig, dass man die Funktion itoa() nicht verwenden sollte.
klar, und diese Einigkeit gilt schließlich nicht nur für das ANSI-C-Forum, aus den oben genannten Gründen
MfG
-
Hmm...
wenn das alles so ist, dann frage ich mich, warum in Kernighan&Ritchie's "Programmieren in C" im Kapitel 3, Abschnitt 7, Seite 63 (2. Auflage im Hanser-Verlag) eben jene Funktion itoa und atoi erwähnt werden?
Hat man diese Funktionne bei der Verabschiedung des Standards echt gekickt? Wundert mich dahingehend, weil vorne auf dem Buch dick und fett "ANSI C" steht...
Na, hab ich wieder was gelernt...
-
also die Erwähnung von itoa findet im K & R in der Hinsicht statt, daß dort die Funktion als Beispiel eigen-implementiert wird. Dort steht nicht, daß itoa eine Standard-Funktion ist (schau mal hinten im Index nach, dort steht beim Stichwort "itoa" nur die Seitenzahl, bei "atoi" allerdings auch ein Verweis "Bibliotheks-Funktion" mit der Seitenzahl).
Also K & R ist und bleibt eine ANSI-C-Beschreibung
MfG