Gast
#547076
Hallo, ich habe folgendes Problem mit einem ATMEGA128 und WinAVR (libc 1.4.3) und bin schon langsam am verzweifeln: ich habe eine 64bit Integer-Zahl (also unsigned long long) die ich in dezimaler Form als String ausgeben möchte. Mit sprintf(string, "%llu", big_int); kriege ich zwar ein ergebnis, aber die Zahl ist immer falsch (zb. statt 0 gibt er 16853041 aus). Wobei big_int als unsigned long long int definiert ist. Ich habe es auch schon mit uint64_t und unsigned long long versucht, aber das ändert nichts. Die obige Zeile funktioniert mit char, int und long problemlos (mit entsprechend angepassten '%u' '%lu'), aber ab long long leider nicht mehr. Hat jemand eine Idee woran es liegen könnte oder noch besser, eine Idee wie ich zum gewünschten Ergebnis komme ohne sprintf zu verwenden? Grüße, Björn