Bildirim
char* strchr(const char *str, int c);
Açıklama
Str parametresi ile gösterilen karakter dizisinde c parametresi ile gösterilen değerin (unsigned char olarak değerlendirilir) ilk geçtiği yeri arar ve bu bellek adresini gösteren bir işaretçi geri döndürür.
Eğer str parametresi sonu boş karakter olan bir karakter dizisini gösteren bir işaretçi değilse, anlamsız bir sonuç elde edilir.
Parametreler
str: Aramanın yapılacağı karakter dizisidir.
c: Aranacak olan değeri gösterir. Değer int olarak verilir ancak fonksiyon bu değeri unsigned char bir değere çevirerek arama işlemi yapar.
Dönüş değeri
Str parametre değeri ile gösterilen karakter dizisinde bulunan ilk c parametre değerinin bellek adresini gösteren bir işaretçi geri döndürülür. Değer bulunmazsa, NULL bir işaretçi geri döndürülür.
Örnek
#include <stdio.h>
#include <string.h>
int main(void)
{
const char cdizi[] = "Bilgisayar";
char *ret;
ret = strchr(cdizi, 's');
printf("Bulunan karakterden itibaren dizi içeriği: %s", ret);
return 0;
}
Yukarıdaki örnekte, program aşağıdaki satırı ekrana yazar.
Bulunan karakterden itibaren dizi içeriği: sayar
Program strchr() fonksiyonu ile bir karakter dizisi içinde 's' karakterini arar. Karakterin bulunduğu yerden itibaren dizi içeriğini ekrana yazar.
Kaynak kodu
Copyright Public domain
char* strchr(const char *str, int c)
{
do {
if(*str == c) {
return (char*)str;
}
} while (*str++);
return 0;
}