if (code == blau) // das funktioniert hingegen
Weil beide Zahlen gleich abgeschnitten werden
if (code == blau) // das funktioniert hingegen
Weil beide Zahlen gleich abgeschnitten werden
Finnlay:
Tut mir leid. Aber als Benachrichtigungslink (email) habe ich den für den Beitrag nach dir bekommen. Darum habe ich das nicht gelesen.
Ja, hab das erst nach 1min hinzugefügt. Alles halb so wild. ![]()
Übrigens wollte ich Dich mit unsigned long nur dazu animieren, die Suchmaschine bzw. die interne Suche anzuwerfen um Dir die verschiedenen Datentypen näher zu bringen.
Grüße,
Donny
Hi
Selber bin ich ja ein Fan von
'uint16_t', statt 'unsigned int'
'uint32_t' statt unsigned long
'uint64_t' statt unsinged long long (glaube ich)
'uint8_t' ginge noch statt 'byte' (wobei bei mir bisher ein Byte IMMER 8 Bit waren)
'int8_t' statt 'char'
(float und double gibt's auch noch)
Das INT sagt: Keine Nachkommastellen!
Das U sagt ebenfalls nur 'unsigned' - also 'ohne Vorzeichen' - hier gibt es KEINE negativen Zahlen.
Ohne das U (bzw. das unsigned bei den Arduino-Bezeichnungen) können die Zahlen auch kleiner als Null sein (das oberste Bit gibt an, ob die Zahl negativ ist, somit verbleiben nur noch n-1 Bit für den Wertebereich, Stichwort: 2er Komplement)
@TO
Hier siehst Du recht anschaulich, wieso Es DOCH eine gute Idee ist, Seinen Fehler-Code hier einzubringen.
In welchem Zahlenbereich Du prüfst, war NIRGENS auch nur ansatzweise erwähnt - als Hausnummer kam '100' ... und Die passt in jeden Datentyp und zeigt dieses fehlerhafte Verhalten NICHT, obwohl Du schriebst, daß Sie Es täte.
MfG