Serial.print

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 :wink: