Hallo Leute, bin im Momnet am Einarbeiten in die Programmierung der AVR Serie mit Hilfe des AVR-gcc (Version 3.4.3). Jetzt bin ich auf folgende Sache gestossen. Also wenn ich eine Variable definiere zB. unsigned long volker; funktioniert das auch ohne das ich die Datei stdint.h einbinde. Kann mir jemand sagen warum das so ist? Vielen Dank Volker
Weil das Standard-C ist. Schau doch einfach in inttypes.h rein, dann siehst du, was darin deklariert wird. Diese Datei ist da, integer-Datentypen mit definierter Wortbreite zu definieren, also uint8_t, int16_t usw.
Hallo Jörg, danke erstmal für die Antwort. Ich glaube jetzt habe ich es verstanden. Zur Bestätigung meiner Erkenntnis: wenn ich die stdint.h nicht einbinde dann kann ich nur die Standard-C Deklarationen verwenden wie "unsigned char", die versteht der gcc von natur aus. Will ich aber zur besseren Verständlichkeit der verwendeten Bitlänge meiner Variablen dann uint8_t verwenden dann muß ich die stdint.h einbinden. Zum Schluß, will ich nun meine eigene Bezeichnung "8BitOhneVorz" müsste ich in stdint.h >typedef unsigned char 8BitOhneVorz< reinschreiben. Liege ich da richtig? Gruß Volker
Am besten nicht in den vom Compiler/der LibC mitgebrachten Headrfiles rumpfuschen! Leg Dir eine eigene Headerdatei an und binde die ein. Ausserdem denke ich, daß Typen und Variablen nicht mit Ziffern beginnen dürfen, Du müsstest dann also etwas in der Art machen: typedef vorzeichnlose8Bit;
Hallo OLDBug, also ist meine Aussage von vorhin richtig. Ja das mit Zahlen am Anfang soweit ich noch von früher in Erinnerung habe darf nicht sein war ja nur ein Beispiel. Muß sagen so ein Forum is was Feines. Wahrscheinlich werdet ihr in Zukunft noch mehr von mir hier lesen können da ich noch viel mit dem AVR (ATmega128) vorhabe. Also Danke und bis Bald Volker
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.