C strrchr Fonksiyonu
strrchar fonksiyonu standart
bir fonksiyondur.
Bir yazı içinde karakter
arar. Ancak sondan aramaya
başlar. Bulduğunda
karakterin adresi ile geri döner.
Bulamazsa NULL adresini
döner.
main içinde ilk süslü
parantezler içinde
strrchr fonksiyonu
kullanılmıştır.
ikinci süslü parantez içinde
kendi myStrrchr
fonksiyonu çağrılıyor.
myStrrchr fonksiyonu ile
strrchr fonksiyonu kodlandı.
/*strrchar fonksiyonu
standart bir fonksiyondur.
Bir yazı içinde karakter
arar. Ancak sondan aramaya
başlar. Bulduğunda
karakterin adresi ile geri döner.
Bulamazsa NULL adresini
döner.
main içinde ilk süslü
parantezler içinde
strrchr fonksiyonu
kullanılmıştır.
ikinci süslü parantez
içinde kendi myStrrchr
fonksiyonu çağrılıyor.
myStrrchr fonksiyonu ile
strrchr fonksiyonu kodlandı.
*/
#include <stdio.h>
#include <stdlib.h>
char *myStrrchr(const char *str, int ch)
{
//Herzaman ilk değer vermeyi yapmalıyız.
char *retValue = NULL;
// str adresi içideki karakterlere tek tek ulaşılıyor.
// str++ ile adres döngünün her adımında bir artılıyor.
while( *str++ != '\0')
{
/* *str ile str adresindeki
karakterin
* ch
değişkenindeki karaktere eşit mi
* diye
kontrol ediliyor.
*/
if(*str == ch
)
{
retValue = str;
}
}
/* while dönüsü \0 karakteri görünce döngüye
* girmediği için.
Burada aranan karakterin
* \0 olması
kontrolu ediliyor.
*/
if( ch == '\0')
{
retValue = str;
}
return retValue;
}
int main(void) {
//strrchr fonsiyonun prototipi
// char *strrchr(const char *str, int ch);
{
char city[] = "ankara
kara";
char ch = 'k';
char *ptr =
NULL;
ptr = strrchr(city, ch);
printf("%s\n", ptr);
}
//Kendi fonksiyonumuzu kullanalım
{
char city[] = "ankara
kara";
char ch = 'k';
char *ptr =
NULL;
ptr = myStrrchr(city, ch);
printf("%s\n", ptr);
}
return EXIT_SUCCESS;
}
Hiç yorum yok:
Yorum Gönder