Dies ist ein nicht definiertes Verhalten: Sie lesen nach dem letzten gültigen Byte einer 6-stelligen Zeichenfolge. Nur sieben, nicht acht Bytes sind OK zum Lesen. Außerdem spielt die Byte-Reihenfolge eine Rolle: Sie benötigen möglicherweise 0xffffffffffff0000
auf einigen Architekturen.
Wenn Sie die Länge Ihrer Zeichenfolge kennen, verwenden Sie memcmp
:
Die Wahrscheinlichkeit ist groß, dass Ihr Optimierer dies in eine CPU umwandelt, die für einen schnellstmöglichen Vergleich auf Ihrer Plattform geeignet ist.