Suche
Suche Menü

Zeichen suchen

Zeichen mit strchr in einem String suchen in C

char * strchr(char *s, int c);

Mit String Char können wir ein Zeichen in einem String suchen. Das zu suchende Zeichen wird mit dem Parameter c als ASCII-Code übergeben.

Die Rückgabewerte:

  • NULL, wenn das Zeichen nicht gefunden wurde
  • Adresse des ersten gefundenen Zeichens, wenn es vorkommt

char string[] = "aaXaa";

if(strchr(string, 'X')) {
	printf("String enthaelt ein X\n");
}

String enthaelt ein X

Rückwärts suchen

Mit String Reverse Char beginnen wir am Ende des Strings zu suchen. Wird das Zeichen gefunden, ist dies das letzte Vorkommen des Zeichens im String. In dem Beispiel werden die gefundenen Zeichen verändert, was das unterschiedliche Verhalten der Funktionen strchr und strrchr demonstrieren soll.

char * strrchr(char *s, int c);

char string[] = "aaXaaXaa";

printf("vorher: %s\n", string);

char *c1 = strchr(string, 'X');
char *c2 = strrchr(string, 'X');

*c1 = 'A';
*c2 = 'B';

printf("nachher: %s\n", string);

vorher: aaXaaXaa
nachher: aaAaaBaa