strlen - die Länge der Zeichenkette wird manchmal um 1 erhöht
Ich mache ein paar C-Puzzle-Fragen. In den meisten Fällen kann ich die richtige Antwort finden, aber mit dieser habe ich Probleme. Ich kenne die richtige Antwort, indem ich den Compiler verwende, aber ich kenne den Grund nicht.
Schauen Sie sich den Code an:
char c[] = "abc\012\0x34";
Was würdestrlen(c)
Rückkehr mit einem Standard C-Compiler?
Mein Compiler gibt 4 zurück, wenn das, was ich erwartet hatte, 3 war.
Was ich dachte iststrlen()
würde nach dem ersten Vorkommen der suchenNULL
Charakter, aber irgendwie ist das Ergebnis einer mehr als ich erwartet hatte.
Irgendeine Idee warum?