char * strcmp(char *str1, char *str2);
Mit String Compare können wir zwei Strings vergleichen. Der Rückgabewert kann hierbei folgende Werte haben:
- 0 die Strings sind gleich
- 1 das erste ungleiche Zeichen in str1 ist größer als in str2
- -1 das erste ungleiche Zeichen in str1 ist kleiner als in str2
char str1[] = "aaXaa";
char str2[] = "aaYaa";
// vergleiche str1 mit str2, X < Y, also -1
printf("Vergleich str1 mit str2: %d\n", strcmp(str1, str2));
// vergleiche str2 mit str1, Y > X, also 1
printf("Vergleich str2 mit str1: %d\n", strcmp(str2, str1));
// setze Strings gleich
strcpy(str2, str1);
if(strcmp(str1, str2) == 0) {
printf("str1 ist gleich str2!\n");
}
Vergleich str1 mit str2: -1 Vergleich str2 mit str1: 1 str1 ist gleich str2!
Bestimmte Anzahl von Zeichen vergleichen
Mit strncmp und dem Parameter n können wir die ersten n Zeichen der Strings vergleichen.
char * strncmp(char *str1, char *str2, int n);
char str1[] = "aaXaa";
char str2[] = "aaYaa";
printf("Vergleich der ersten 2 Zeichen: %d\n", strncmp(str1, str2, 2));
printf("Vergleich der ersten 3 Zeichen: %d\n", strncmp(str1, str2, 3));
Vergleich der ersten 2 Zeichen: 0 Vergleich der ersten 3 Zeichen: -1




