Gast
#947994
Hallo Ich wollte mal fragen wieso bei den AT Megas eine INT variable 16 BIT groß ist und nicht 8Bit. Die AT Megas sind doch 8BIT chips?
|
Anzeige
|
[AT Mega] INT 16 BIT
Gast
#947994
Hallo Ich wollte mal fragen wieso bei den AT Megas eine INT variable 16 BIT groß ist und nicht 8Bit. Die AT Megas sind doch 8BIT chips? Die minimale Datenbreite des Typs int hat nichts mit der Plattform zu tun, sondern ist im C-Standard festgelegt. Und da C ursprünglich nicht für den Einsatz auf Plattformen mit weniger als 16 Bit vorgesehen war, steht in dem entsprechenden ANSI-Dokument eben als minimale Breite 16 Bit.
Gast
#948016
Ach so danke Dann müsste auf http://www.roboternetz.de/wissen/index.php/C-Tutorial#int.2C_char.2C_short.2C_long_.28ganze_Zahlen.29 ein Fehler sein weil dort steht; 8, 16, 32 oder 64 BIT für INT möglich Teelöffel wrote: > Ach so danke > > Dann müsste auf > http://www.roboternetz.de/wissen/index.php/C-Tutorial#int.2C_char.2C_short.2C_long_.28ganze_Zahlen.29 > > ein Fehler sein weil dort steht; 8, 16, 32 oder 64 BIT für INT möglich Wenn man einen char als int missbraucht (was z.B. in der stdint.h gemacht wird), dann kann man implizit auch 8-Bit-Integer verarbeiten. Aber das ist nicht der "Ur"-Datentyp int wie er im Standard als Schlüsselwort enthalten ist. int8_t und Konsorten sind per typedef generierte Datentypen, die allerdings mit der stdint.h zusammen ebenfalls zur Standard-Ausstattung von C gehören, nur man muss eben die stdint.h einbinden, um sie nutzen zu können. Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|