QByteArray byteArray;
QDataStream dataStream(&byteArray, QIODevice::WriteOnly);
dataStream << (quint8)22;
dataStream << "test2";
qInfo() << byteArray;
Ergebnis: \x16\x00\x00\x00\x06test2\x00
Sonderbare QByteArray mit QDataStream Verhalten
Warum ist es mit 4 Bytes statt 1? Ich sage ausdrücklich, dass ich möchte, dass es unsigned char
ist. Gibt es einen Speicher, der sich hinter den Kulissen befindet? Kann ich es ausschalten?
EDIT: Es scheint nur zu passieren, wenn ich schreibe char*
es fügt 3 Bytes am Anfang aus dem Nichts.
In der Tat, wie konnte ich es nicht bemerken. Wahrscheinlich, weil qInfo() eine formatierte Zeichenfolge statt nur Bytes anzeigt. Vielen Dank! – lll