Ich verstehe, dass, wenn Sie 'cat' (string1) und 'dog' (string2) in strcmp haben (dies ist eine C-Frage), der Rückgabewert von strcmp kleiner als 0 wäre (da 'cat' lexikalisch kleiner ist als 'Hund').Was gibt strcmp zurück, wenn zwei ähnliche Strings unterschiedliche Längen haben?
Ich bin aber nicht sicher, was mit strcmp passieren würde, wenn dies geschehen ist:
string1: 'dog'
string2: 'dog2'.
Was würde strcmp zurückkehren? Weniger als Null, Null oder größer als? Für den Kontext versuche ich eine Komparatorfunktion zu schreiben, die Strings vergleicht und Zeichenfolgen berücksichtigen möchte, die mit den gleichen Zeichen beginnen. Eine Zeichenfolge kann eine Erweiterung haben (z. B. "2" in "dog2" im obigen Beispiel).
EDIT: Dies ist keine doppelte Frage. Die Frage, die dem ähnlich ist, fragt, was der Rückgabetyp repräsentiert - ich sage, was passiert, wenn die Strings bis zu einem Punkt identisch sind, aber dann stoppt einer von ihnen, während der andere fortfährt.
Warum nicht einfach versuchen? –
Mögliches Duplikat von [strcmp() - Rückgabewerten in c] (http: // stackoverflow.com/questions/7656475/strcmp-return-values-in-c) – MicroVirus
Weil ich mit C gefunden habe, dass die Dinge nicht immer konsistent sind. Die Größen von Typen sind ein gutes Beispiel dafür. –