Hallo zusammen,
Ich habe eine Frage über Serial.print im Arduino, gibt es denn Befehl Serial.print (0x00,BYTE) ? Und wenn ja muss ich eine bestimmte Bibliothek hinfugen?
Danke
Rita
Hallo zusammen,
Ich habe eine Frage über Serial.print im Arduino, gibt es denn Befehl Serial.print (0x00,BYTE) ? Und wenn ja muss ich eine bestimmte Bibliothek hinfugen?
Danke
Rita
Rita_77:
Hallo zusammen,
Ich habe eine Frage über Serial.print im Arduino, gibt es denn Befehl Serial.print (0x00,BYTE) ?
Nur bei historischen Arduino-Versionen vor der Version 1.0.
Ansonsten gäbe es heutezutage zur Ausgabe einen Nullbytes:
Serial.write(0);
oder wenn Du die Null lieber als Hex-Zahl schreiben möchtest:
Serial.write(0x00);
Wie unterscheidet der Compiler eigentlich bei
Serial.write(0);
zwischen
Serial.write((byte)0); // Senden eines Null-Bytes
und
Serial.write((char*)0);
?
Ein Vorteil von const gegenüber #define ist hier zu sehen:
const byte NULLBYTE=0;
Serial.write(NULLBYTE);
#define NULLBYTE ((byte)0) geht natürlich auch
Die beste Lösung für dieses Dilemma liegt in C++11 und dem nullptr Schlüsselwort.
Dass man nullptr nicht mit einer 0 verwechseln kann, ist klar. Aber umgekehrt ?
Ist bei C++11 0 immer eine Integer-Zahl und hat NULL eine andere Deklaration ?
Dass Fragen einfacher ist als selber machen, ist das erste was man hier lernt ![]()