Forum: Compiler & IDEs utoa Problem


von Daniel L. (bucho)


Lesenswert?

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

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

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.

von Daniel L. (bucho)


Lesenswert?

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

von FBI (Gast)


Lesenswert?

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
Noch kein Account? Hier anmelden.