Hab einfach mal dein Codestück oben ein bißchen umgeschrieben:
Aufruf dann mit:Code:void LongToString(long wert, unsigned int laenge, char* s) { int i; for(i = 0; i < laenge; i++) { s[laenge-i-1] = (wert % 10) + 48; wert = wert / 10; } s[laenge] = '\0'; }
Wenn ich jetzt auf die schnelle nichts übersehen habe, dann sollte das funktionieren. Man könnte das vielleicht noch etwas beschleunigen mit der div() funktion ( siehe avr-libc Doku ).Code:char s[10]; long x = 1234567; LongToString(x, 7, s);
MfG Kjion







Zitieren

Lesezeichen