Heim  >  Artikel  >  Backend-Entwicklung  >  In C/C++ wird die Funktion strcmp() zum Vergleichen zweier Zeichenfolgen verwendet

In C/C++ wird die Funktion strcmp() zum Vergleichen zweier Zeichenfolgen verwendet

WBOY
WBOYnach vorne
2023-09-10 11:41:06751Durchsuche

In C/C++ wird die Funktion strcmp() zum Vergleichen zweier Zeichenfolgen verwendet

Die Funktion strcmp() ist eine integrierte Bibliotheksfunktion und wird in der Header-Datei „string.h“ deklariert. Diese Funktion wird verwendet, um die String-Argumente zu vergleichen. Es vergleicht Zeichenfolgen lexikografisch, was bedeutet, dass beide Zeichenfolgen Zeichen für Zeichen verglichen werden. Es beginnt mit dem Vergleich des allerersten Zeichens von Zeichenfolgen, bis die Zeichen beider Zeichenfolgen gleich sind oder ein NULL-Zeichen gefunden wird.

Wenn das erste Zeichen beider Zeichenfolgen gleich ist, prüft es das zweite Zeichen und so weiter. Dieser Vorgang wird fortgesetzt, bis ein NULL-Zeichen gefunden wird oder beide Zeichen ungleich sind.

Hier ist die Syntax von strcmp() in der C-Sprache:

int strcmp(const char *leftStr, const char *rightStr );

Diese Funktion gibt die folgenden drei verschiedenen Werte basierend auf dem Vergleich zurück.

1 .Zero(0) − Es gibt Null zurück, wenn beide Zeichenfolgen identisch sind. Alle Zeichen sind in beiden Zeichenfolgen gleich.

Hier ist ein Beispiel für strcmp(), wenn beide Zeichenfolgen in der C-Sprache gleich sind:

Beispiel

 Live-Demo

#include<stdio.h>
#include<string.h>
int main() {
   char str1[] = "Tom!";
   char str2[] = "Tom!";
   int result = strcmp(str1, str2);
   if (result==0)
   printf("Strings are equal");
   else
   printf("Strings are unequal");
   printf("\nValue returned by strcmp() is: %d" , result);
   return 0;
}

Ausgabe

Strings are equal
Value returned by strcmp() is: 0

2 ) − 当左字符串的匹配字符的ASCII值大于右字符串的字符时,它返回一个大于零的值.

Geben Sie C语言中strcmp() ein

 在线演示

#include<stdio.h>
#include<string.h>
int main() {
   char str1[] = "hello World!";
   char str2[] = "Hello World!";
   int result = strcmp(str1, str2);
   if (result==0)
   printf("Strings are equal");
   else
   printf("Strings are unequal");
   printf("\nValue returned by strcmp() is: %d" , result);
   return 0;
}

Output

Strings are unequal
Value returned by strcmp() is: 32

3.小于零(. 当左字符串的匹配字符的ASCII小于右字符串的字符时,它返回一个小于零的值. 下面是C语言中strcmp()的一个例子

例子

 在线演示

#include<stdio.h>
#include<string.h>
int main() {
   char leftStr[] = "Hello World!";
   char rightStr[] = "hello World!";
   int result = strcmp(leftStr, rightStr);
   if (result==0)
   printf("Strings are equal");
   else
   printf("Strings are unequal");
   printf("\nValue returned by strcmp() is: %d" , result);
   return 0;
}

Output

Strings are unequal
Value returned by strcmp() is: -32

Das obige ist der detaillierte Inhalt vonIn C/C++ wird die Funktion strcmp() zum Vergleichen zweier Zeichenfolgen verwendet. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen