C’de standart kütüphanesi olan string.h’da mevcut strlen ile null elemanıyla sonlanmış olan dizinin eleman sayısını vermektedir. fonksiyonun geri dönüş türü size_t’dir. Aşağıdaki örnek kaynak kodunda %d ile print etmek için integer cinsine casting işlemi yapılmıştır. eğer direk olarak print etmek istediğimizde %zd kullanılması gerekmektedir.
string.h’da tanımlanan strlen fonksiyonu;
size_t strlen( const char *str );
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
#include <stdio.h> #include <string.h> int main() { unsigned char string_test[10]="komhedos"; unsigned char string_test_two[10]={'k','o','m','h','e','d','o','s','\r'}; printf("%d",(int)strlen(string_test)); printf("%zd",strlen(string_test)); printf("%d",(int)strlen(string_test_two)); return 0; } |
C’nin standart kütüphanesinde bulunan strlen ile sizeof operatörü birbirine karıştırılmaması gerekmektedir. sizeof operatörü ile string’in kaç byte yer kapladığını öğreniriz.
sizeof operatörü hakkında bilgi verilen yazıyı okumak için tıklayınız.