08.11.2014 Views

c_kitap

c_kitap

c_kitap

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

C ve Sistem Programcıları Derneği - C Ders Notları - Necati Ergin<br />

Yazılarla İlgili İşlem Yapan Standart İşlevler<br />

C'nin standart bazı işlevleri bir yazının başlangıç adresini parametre olarak alarak yazı ile<br />

ilgili birtakım faydalı işlemler yapar. Bu işlevlere dizge işlevleri denir. Dizge işlevlerinin<br />

bildirimleri string.h dosyası içindedir.<br />

strlen İşlevi<br />

En sık çağrılan standart C işlevlerinden biridir. İşlevin ismi olan strlen, "string length"<br />

sözcüklerinden gelir. Bu işlev bir yazının karakter uzunluğunu yani yazının kaç<br />

karakterden oluştuğu bilgisini elde etmek için kullanılır.<br />

İşlevin bildirimi:<br />

size_t strlen(const char *str);<br />

biçimindedir. İşlevin parametre değişkeni, uzunluğu hesaplanacak yazının başlangıç<br />

adresidir. İşlev sonlandırıcı karakter görene kadar karakterlerin sayısını hesaplar. Geri<br />

dönüş değeri türü yerine yazılan size_t nin şimdilik unsigned int türünün bir başka ismi<br />

olduğunu düşünebilirsiniz.<br />

#include <br />

#include <br />

int main()<br />

{<br />

char s[100];<br />

printf("bir yazı giriniz : ");<br />

gets(s);<br />

printf("(%s) yazısının uzunluğu = %u\n", s, strlen(s));<br />

}<br />

return 0;<br />

Standart C işlevi olan strlen aşağıdaki biçimlerde tanımlanabilir:<br />

unsigned int mystrlen1(const char *str)<br />

{<br />

unsigned int length = 0;<br />

}<br />

while (*str != '\0') {<br />

++length;<br />

++str;<br />

}<br />

return length;<br />

unsigned int mystrlen2(const char *str)<br />

{<br />

unsigned int len;<br />

}<br />

for (len = 0; str[len] != '\0'; ++len)<br />

;<br />

return len;<br />

265

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!