Hallo alle zusammen! Ich habe ein Problem beim AVR-GCC mit der utoa-Funktion. Wenn ich diese mit einem uint32_t ausführe, dann kommt nur Kraut und Rüber raus, verwende ich allerdings ein uint16_t, dann funktioniert es einwandfrei. Kann es sein, daß größere uint-Typen nicht unterstützt werden? Die libc-Dokumentation hat mir auch nicht weitergeholfen, ich hoffe, jemand kann mir helfen. Falls es nötig ist, kann ich auch den Code posten. MfG Daniel
Na, wie sieht denn der Funktionsprototyp von utoa aus? Richtig - utoa erwartet einen unsigned int. Das ist auf einem AVR ein uint16_t. Was Du aufrufen willst, müsste auch beim AVR-GCC ultoa heißen, das nämlich erwartet einen unsigned long, beim AVR also uint32_t.
Achso, da habe ich mich von der Bezeichnung uINT32 dazu verleiten lassen, daß es sich um einen unsigned int handelt. Vielen Dank für die Hilfe, da hab ich mal wieder was dazugelernt. Gruß Daniel
Hi, wenn Du in die stdint.h reingeschaut hättest, hättest Du da (u.a.) auch folgende Zeilen gefunden:
1 | typedef unsigned int uint16_t; |
2 | typedef unsigned long int uint32_t; |
CU
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.