Arduino Karakter Fonksiyonları

Karakter fonksiyonları bir karakterin harf, alfasayısal, büyükharf, küçükharf, ASCII vb. özelliklerini algılamak için kullanılmaktadır. Bu dersimizde anlatacağımız tüm fonksiyonların ortak özellikleri, yalnızca char (karakter) türü parametre alması ve geriye bool (true ya da false) tipi değer döndürmesidir.

Arduino dilinde 13 adet karakter fonksiyonu bulunmaktadır.

Bunlar;

  • isAlpha
  • isAlphaNumeric
  • isAscii
  • isControl
  • isDigit
  • isGraph
  • isHexadecimalDigits
  • isLowerCase
  • isUpperCase
  • isPrintable
  • isPunct
  • isSpace
  • isWhitespace

1- isAlpha Fonksiyonu:

isAlpha fonksiyonu bir karakterin harf olup olmadığını kontrol etmeye yarayan fonksiyondur. Eğer fonksiyona gönderilen veri bir karakter ise, fonksiyon true değer döndürür.

Sözdizimi; isAlpha(char);

Örnek;

yukarıdaki örnekte “k” karakteri bir harf olduğu için fonksiyon bize true sonuç döndürür ve if küme parantezi içerisindeki kod çalışıp, seri porta “Bu bir harftir” yazar.

2- isAlphaNumeric Fonksiyonu:

Bu fonksiyon, fonksiyona gönderilen parametrenin bir harf ya da rakam mı olduğunu kontrol eder. Eğer parametre harf ya da rakam ise true sonucu döndürür.

Sözdizimi; isAlphaNumeric(karakter);

Örnek;

3- isAscii Fonksiyonu:

Bu fonksiyonumuz, fonksiyona gönderdiğimiz verinin ASCII standartlarında bir veri olup olmadığını kontrol eder. Eğer veri ASCII standartlarında ise, fonksiyon bize true sonuç döndürür. ASCII karakterlerin hangileri olduğunu görmek isterseniz, Karakter Kodları sayfasındaki tablomuza göz atabilirsiniz. Aynı sayfada klavyeden girilen karakterin karakter numaralarını Decimal, Hexadecimal ve Binary olarak görebilirsiniz.

Sözdizimi; isAscii(karakter);

Örnek;

4- isControl Fonksiyonu:

isControl fonksiyonu, fonksiyona gönderilen karakterin kontrol karakteri olup olmadığını kontrol eder. Eğer kontrol karakteri ise true, eğer kontrol karakteri değilse false sonuç döndürür. Kontrol karakterleri ASCII tablosunun ilk 32 (decimal 0 ila 31 arası) karakterleridir.

Sözdizimi: isControl(char);

Örnek;

Yukarıdaki örnekte ASCII tablosunda Decimal 6 numaralı karakter kontrol karakteri olduğu için, programımız seri porta “Bu bir kontrol karakteridir” yazacaktır.

5- isDigit Fonksiyonu:

Bu fonksiyonumuz karakterin rakam olup olmadığını kontrol eder. Eğer girilen karakter rakam ise true sonucunu döndürür.

Sözdizimi; isDigit(karakter);

Örnek;

 

6- isGraph Fonksiyonu:

Bu fonksiyonumuz karakterin ekrana yazılabilirliğini kontrol eder. Eğer yazılabiliyor ise true sonuç döndürür.

Sözdizimi; isGraph(karakter);

Örnek;

Yukarıdaki kod örneğinde else parantezi içerisindeki kodlar çalışır. Çünkü ACK karakterinin sembolü olmadığı için isGraph fonksiyonu bize false döndürmüştür.

7- isHexadecimalDigits Fonksiyonu:

Bu fonksiyonumuz girilen karakterin hexadecimal rakam olup olmadığını kontrol eder. Eğer hexadecimal rakam ise, fonksiyon bize true sonuç döndürür.

Sözdizimi; isHexadecimalDitits(karakter);

Örnek;

Yukarıdaki örnekte if parantezi içerisindeki kodlar çalışır ve seri porta “Evet bu karakter hexadecimal bir rakamı temsil eder” yazar. Çünkü “F” karakteri hexadecimal bir rakamdır ve decimal karşılığı 16’dır.

8- isLowerCase Fonksiyonu:

Bir karakterin küçük harf olup olmadığını kontrol eden fonksiyondur. Eğer fonksiyona göndeerilen parametre küçük harf ise true sonuç döndürür.

Sözdizimi; isLowerCase(karakter);

Örnek;

Yukarıdaki “karakter” değişkenine atadığımız “k” karakteri küçük olduğundan dolayı, if sorgusundaki “ifLowerCase” fonksiyonumuz bize true değer döndürecektir. Bu sebeple “if” küme parantezi içerisindeki kodlar çalışacak ve ekrana “Bu harf küçük harftir” yazacaktır.

9- isUpperCase Fonksiyonu:

Bu fonksiyonumuz ise isLowerCase fonksiyonunun tam tersi olarak işlem yapar. Yani isUpperCase fonksiyonu, fonksiyona gönderdiğimiz parametreyi kontrol ederek karakterin büyük harf olması durumunda true sonuç döndürür. Eğer küçük harf ise false sonuç döndürür.

Sözdizimi; isUpperCase(karakter);

Yukarıdaki programımız seri porta “Bu harf büyük harftir” yazacaktır.

10- isPrintable:

isPrintable fonksiyonumuz, fonksiyona gönderdiğimiz karakterin yazıcıda basılabilirliğini kontrol eder. Eğer basılabilir karakter ise true, eğer basılabilir karakter değilse false sonuç döndürür.

Sözdizimi; isPrintable(karakter);

11- isPuntch Fonksiyonu:

Fonksiyona gönderdiğimiz karakterin noktalama işareti (nokta, virgül, soru işareti, ünlem işareti vs.) olup olmadığını kontrol eder ve eğer noktalama işareti ise true sonuç döndürür.

Sözdizimi; isPuntch(karakter);

Örnek;

12- isSpace Fonksiyonu:

Bu fonksiyonumuz, fonksiyona gönderilen karakterin boşluk karakteri olup olmadığını kontrol eder. Eğer boşluk karakteri ise true, değilse false sonuç döndürür.

Sözdizimi; isSpace(karakter);

13- Whitespace Fonksiyonu:

Bir karakterin boşluk, formfeed (\f), yeni satır (\n), satır başı (\r), tab (\t)  ve dikey sekme (\v) olup olmadığını kontrol eder. Eğer karakter bunlardan biri ise true, değilse false sonuç döndürür.

 

Yorum Yap