Turkhackteam.net/org - Turkish Hacking & Security Platform...  
Geri git   Turkhackteam.net/org - Turkish Hacking & Security Platform... >
Programlama
> C/C++


C Programlama getchar(), putchar(), getche() ve getch() Fonksiyonları

C/C++

Yeni Konu aç Cevapla
 
Seçenekler
Alt 06-12-2017   #1
  • Online
  • Tuğgeneral
  • Genel Bilgiler
Üyelik tarihi
Mar 2017
Nereden
TristanCunha
Yaş
87
Mesajlar
Konular


  
Post C Programlama getchar(), putchar(), getche() ve getch() Fonksiyonları



C Programlama Dilinde klavyeden girilen verileri okutmak için getchar(), putchar(), getche() ve getch() kütüphane fonksiyonlarından birini kullanabiliriz. Şimdi, bu fonksiyonları sıra ile incelemeye çalışalım.

getchar() ve putchar() Fonksiyonları : Klavye arabelleğini kullanan fonksiyonlardan biridir. Herhangi bir parametreye sahip değildir. Fonksiyon her çağrıldığında kullanıcıdan klavyeden girdiği ilk harfi alır ve geri döndürür. Klavye arabelleğini kullanan bir fonksiyon olması nedeniyle döndürme işleminden önce kullanıcıdan Enter tuşuna basmasını bekler. stdio.h isimli kütüphane dosyasında tanımlanmışlardır. putchar fonksiyonu ise, ekrana tek bir karakter yazar. putchar fonksiyonunun parametresi int bir değerdir, ancak bu değer fonksiyon tarafından unsigned char bir değere çevrilir. Eğer işlem başarılı olursa, putchar fonksiyonu parametre olarak verilen karakteri ekrana yazdırır.

Klavye Arabelleği Kavramı (Keyboard Buffer) : İşletim Sistemlerinde klavyeden yazılan harflerin depolandığı arabellektir. Kullanıcıdan metin girişi istendiğinde yazılan metin bu bellekte tutulur. enter tuşuna basılıncaya kadar programımız kullanıcı girişine tepki vermez. enter tuşuna basıldığında ise bellek boşaltılır. Biz klavyeden bir bilgi girdiğimizde aslında standart I/O dosyasına yazmış oluyoruz. yani bizim girdi ve çıktı olarak bildigimiz klavye, ekran aslında birer input ve output dosyalarını temsil etmektedir. C Programlama Dilinde bunları stdin dosyası ve stdout dosyası denir. stdin dosyasının varsayılan değeri klavye, stdout dosyası ise ekranı temsil eder. C Programlama Dili fonksiyonlarının büyük çoğunluğu bu şekilde çalışmaktadır.

Örnek getchar() ve putchar() Fonksiyonları

Kod:
#include <stdio.h>

int main(int argc, char** argv)
{
    char karakter;
    //klavyeden bir karakter oku ve enter tusunu bekle//
    printf("bir karakter giriniz ve enter tusuna basiniz:");
    karakter=getchar();
    printf("girilen karakter:");
    //okunan karakteri ekrana yazdir//
    putchar (karakter);
    return 0;
}

Yukarıdaki örnekte, program klavyeden girilen karakteri getchar() fonksiyonu ile karakter değişkenine atar ve putchar() fonksiyonu ile değişken değerini ekrana yazar.

getch() ve getche() Fonksiyonları : getch fonksiyonu aynen getchar fonksiyonu gibi klavyeden yazılan tek bir karakteri okur. Klavyeden bir karakter girildiğinde okur ve bellek değişkenine atar. Ayrıca enter tuşuna ihtiyacı yoktur. Klavyeden girilen karakter unsigned char bir değer olarak okunur ve int bir değere çevrilir. Sonuçta, klavyeden okunan değer char bir değişkene atanır. Bu foksiyon klavye arabelleğini kullanmamaktadır. Atama sonrası kullanıcının girdiği karakter ekrana yazdırılmaz. getche fonksiyonu ise kullanıcı karakter değerini girer girmez enter tuşunun basılmasını beklemeden okunan değeri bize döndürür. getche fonksiyonuyla getch arasındaki farklılık okunan karakter değerini ekrana yazdırmasıdır.


Örnek getch() ve getche() Fonksiyonları

Kod:
#include <stdio.h>

int main(int argc, char** argv)
{
    char karakter;
    karakter=getch();
    printf("\n girilen karakter:%c Program sonlandi.\n",karakter);
    return 0;
}
Kod:
#include <stdio.h>

int main(int argc, char** argv)
{
    char karakter;
    karakter=getche();
    printf("\n girilen karakter:%c Program sonlandi.\n",karakter);
    return 0;
}

    


__________________

Neden iki kulağımıza karşılık bir dilimiz var, biliyormusunuz? Çok dinleyelim de az konuşalım diye...
Online
 
Alıntı ile Cevapla
Cevapla

Bookmarks

Seçenekler


Bilgilendirme Turkhackteam.net/org
Sitemizde yer alan konular üyelerimiz tarafından açılmaktadır.
Bu konular yönetimimiz tarafından takip edilsede gözden kaçabilen telif hakkı olan veya mahkeme kararı çıkmış konular sitemizde bulunabilir. Bu tür konuları bize turkhackteamiletisim [at] gmail.com adresine mail atarak bildirdiğiniz takdirde en kısa sürede konular hakkında gerekli işlemler yapılacaktır.
Please Report Abuse, DMCA, Harassment, Scamming, Warez, Crack, Divx, Mp3 or any Illegal Activity to turkhackteamiletisim [at] gmail.com


Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz.
Turkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Turkhackteam sorumlu değildir. Sitelerinize Turkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.



         

Powered by vBulletin® Copyright ©2000 - 2018

TSK Mehmetçik Vakfı

Türk Polis Teşkilatını Güçlendirme Vakfı



Google Links

wau

Search Engine Friendly URLs by vBSEO 3.6.0 ©2011, Crawlability, Inc.