Fridolin schrieb:
> Wie müsste ich die Stellen...
> ... im code fortführen?
Ich sehe, daß du dir Gedanken darüber machst, wie man Integerzahlen in
lesbare Zeichen konvertieren kann - und zwar selber. Der Ratschlag mit
printf ist dagegen etwa so wie "nehmen sie sich ein Ingenieurbüro zum
Lösen ihrer Aufgabe".
Aber dein Ansatz ist recht verschwenderisch, denn er beinhaltet gleich
zwei Divisionen, eine für das Modulo und dann noch eine explizite.
man mach sowas anders: Zunächst solltest du mal nachlesen, was die
Funktion
1 | ldiv_t T;
|
2 | T = ldiv(zahl,10);
|
macht.
Damit kannst du dann das Ganze in eine Schleife packen. Beim 1.
Durchlauf kommt als Rest die Einerstelle herus, beim 2. Durchlauf dann
die Zehnerstelle und so weiter. Im Prinzip teilst du mehrfach durch 10
und der jeweilige Rest ist die Stelle (natürlich dann aus 0..9 noch
ASCII machen, also 30h..39h)
Das spart nicht nur Code, sondern in deinem Falle auch Rechenzeit und du
brauchst dich nicht mehr zu fragen, wie man "die Stellen...im Code
fortführt".
Und damit kannst du dir deine eigene Ausgabekonvertierung schreiben, die
dramatisch kleiner und schneller ist als alles was nach printf riecht
bzw. stinkt. Und du weißt ab jetzt, wie man sowas selber anpackt.
W.S.