Warning: Undefined array key "HTTP_ACCEPT_LANGUAGE" in /var/www/vhosts/bilgigunlugum.net/httpdocs/index.php on line 43
C Programlama

BG MVC Model View Controller eğitim serisi yayında...

Ana sayfa > Programlama > C Programlama > C standart kütüphanesi > <string.h> > strrchr

strrchr() fonksiyonu

Bildirim

char* strrchr(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) son 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ğı karkater 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 son 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 cd = 'i';
    char *ret;

    ret = strrchr(cdizi, cd);

    printf("Bulunan son %c karakterinden itibaren dizi içeriği: %s", cd, ret);

    return 0;
}


Yukarıdaki örnekte, program aşağıdaki satırı ekrana yazar.

Bulunan son i karakterinden itibaren dizi içeriği: isayar

Program strrchr() fonksiyonu ile bir karakter dizisi içinde 'i' karakterinin bulunduğu son yeri arar. Karakterin bulunduğu yerden itibaren dizi içeriğini ekrana yazar.

Kaynak kodu

Copyright Public domain


char* strrchr(const char *str, int c)
{
  char* ret=0;
  
  do {
     if(*str == (char)c)
        ret=str;
  } while(*str++);
  
  return ret;
}