Karakterlerin Sınıflandırılması
Önceki IV. Oylum - Karakterle Çalışma Sonraki
Karakterlerin Sınıflandırılması
Bu kısımda karakterlerin sınıflandırılmasında kullanılan işlevler açıklanmıştır. Örneğin isalpha işlevi bir karakterin alfabetik bir karakter olup olmadığını sınar. Argüman olarak bir karakter alır ve alfabetik bir karakterse sıfırdan farklı bir tamsayı, değilse sıfır ile döner. Onu aşağıdaki gibi kullanabilirsiniz:
if (isalpha (c))
  printf ("`%c' bir alfabetik karakterdir.\n", c);
Bu kısımdaki her işlev bir karakterin belli bir sınıfa üye olup olmadığına bakar ve bu işlevlerin isimleri daima is ile başlar. Herbiri argüman olarak bir karakter alır ve mantıksal bir değer olarak değerlendirilebilen int türünden bir değerle döner. Karakter argümanı int türünden olmalıdır. Bir gerçek karakter yerine EOF gibi bir sabit değer de verilebilir.
Her karakterin öznitelikleri yerele göre değişiklik gösterir. Yereller hakkında daha fazla bilgi edinmek isterseniz Yereller ve Uluslararasılaştırma bölümüne bakınız.
Bu işlevler ctype.h başlık dosyasında bildirilmiştir.
int islower
(int c)
işlev
c bir küçük harf ise sıfırdan farklı bir değerle döner. Harfin Latin alfabesinden olması şart değildir, herhangi bir alfabeden olabilir.
int isupper
(int c)
işlev
c bir büyük harf ise sıfırdan farklı bir değerle döner. Harfin Latin alfabesinden olması şart değildir, herhangi bir alfabeden olabilir.
int isalpha
(int c)
işlev
c bir alfabetik karakter (bir harf) ise sıfırdan farklı bir değerle döner. islower veya isupper işlevi doğru ile dönüyorsa isalpha işlevi de doğru ile döner.
Bazı yereller ne büyük ne de küçük harf olan ve isalpha işlevinin doğru ile döndüğü ek karakterler içerir. Standart "C" yerelinde böyle bir karakter yoktur.
int isdigit
(int c)
işlev
c değişkeninin değeri 0 ile 9 arasında bir rakam karakteri ise sıfırdan farklı bir değerle döner.
int isalnum
(int c)
işlev
c bir alfasayısal karakter (bir harf ya da rakam) ise sıfırdan farklı bir değerle döner. Başka bir ifade ile, isalpha ya da isdigit doğru ise isalnum da doğrudur.
int isxdigit
(int c)
işlev
c değişkeninin değeri 0 ile 9 arasında bir rakam karakteri veya A ile F arasında bir büyük ya da küçük harf ise sıfırdan farklı bir değerle döner.
int ispunct
(int c)
işlev
c bir noktalama işareti ise sıfırdan farklı bir değerle döner. Noktalama işaretleri, alfasayısal ve boşluk olmayan basılabilir karakterlerdir.
int isspace
(int c)
işlev
c bir boşluk karakteri ise sıfırdan farklı bir değerle döner. "C" yerelinde isspace işlevi, sadece
    ' '  (boşluk)
    '\f' (sayfa ileri)
    '\n' (satırsonu)
    '\r' (satırbaşı)
    '\t' (yatay sekme)
    '\v' (düşey sekme)
karakterleri için doğrudur.
int isblank
(int c)
işlev
c bir boşluk ya da sekme karakteri ise sıfırdan farklı bir değerle döner. Bu işlev bir GNU oluşumudur, fakat ISO C99'a da eklenmiştir.
int isgraph
(int c)
işlev
c bir çizgesel karakter ise sıfırdan farklı bir değerle döner. Çizgesel karakterler, metin ekranında pencere çizmek amacıyla kullanılan karakterler gibi karakterlerdir. Boşluk karakterleri çizgesel karakter değildir.
int isprint
(int c)
işlev
c basılabilir bir karakter ise sıfırdan farklı bir değerle döner. Basılabilir karakterler, çizgesel karakterler ile boşluk (' ') karakterinden oluşur.
int iscntrl
(int c)
işlev
c bir denetim karakteri ise (basılabilir bir karakter değilse) sıfırdan farklı bir değerle döner.
int isascii
(int c)
işlev
c bir 7 bitlik unsigned char türünden ASCII karakter kümesinden karakter ise sıfırdan farklı bir değerle döner. Bu işlev bir BSD ve SVID oluşumudur.
Önceki Üst Ana Başlık Sonraki
IV. Oylum - Karakterle Çalışma Başlangıç Büyük-Küçük Harf Dönüşümleri
Bir Linux Kitaplığı Sayfası