Yazarlar Sözlük Makaleler Yardım Masası Gözlük Forum İstatistik

Tüm Başlıklar XML

1.  conio.h'daki c fonksiyonlarından, klavyeden karakter alır, bir * değişkenine atabilir, girilen karakter ekranda gözükmez, direk klavyeden okuduğu için 'enter'a basmak gerekmez. mesela programı parça parça çalıştırmak için aralara
getch();
ekleyebilirsiniz.
benzerleri için; getchar, getche.
dadaruh
26 Ekim 2005 21:58
2.  Genelde yazdığım ufak progaramlarda ekranda çıktıyı görebilmek için kullanırdım.Çok işime yaramıştı zamanında.
mennan
26 Ekim 2005 22:38
3.  Sadece Windows ortamında conio.h başlık dosyasında tanımlıdır. Unix ve Linux türevlerinde bu fonksiyon yoktur, çalışmaz..

Benim ödevlerimde kullandığım şöyle bir çözüm var..



#ifdef _WIN32        // This library exists only on WIN32 platforms
  #include <conio.h> //library for getch in readkey function
#endif


/******************************************************************************
* Function name  : readkey                                                   *
* Purpose        : Wait for user to hit a key                                *
* Input Parameter: void                                                      *
* Output         : ASCII code of the key that user hit                       *
* Data Structures:                                                           *
* Algorithm      :   This function includes OS dependent code, so it IS NOT  *
*                  guaranteed to work.                                       *
*                                                                            *
*                               ***WARNING***                                *
*            This function executes/depends on external programs/library     *
*   If these programs DO NOT exist or DO NOT work as expected,               *
* this program may behave abnormal. Functionality of this function is tested *
* on Microsoft Wİndows XP Pro SP2 and Linux Ubuntu 2.6.10-5-386              *
******************************************************************************/
int readkey(){
  int key;
#ifdef __unix__

  // tell console to give key codes to the program
  system("stty -icanon -echo min 1 time 100");
  key = getchar();
  system("stty sane"); // release our control on the user input

#elif defined(_WIN32) && ( defined(_INC_CONIO) || defined(_CONIO_H_) )

  key = getch(); // This function is defined in conio.h

#else

  key = getchar();

#endif

  return key;
}


Artık 'readkey' fonksiyonunu DOS/Windows ve Linux ortamlarında kullanabilirsiniz.

NOT: '_INC_CONIO' ve '_CONIO_H_' sırayla MS Visual Studio ve Dev-C++ derleyicilerinin conio.h dosyasına verdikleri isimdir. Farklı derleyiciler farklı isimler verebilir dikkat etmek lazım..

Kodları ingilizce yazılmış bir ödevimden aynen kopyaladım, kusura bakmayın..
erdemkose
27 Ekim 2005 11:28
4.  ANSI C'de olmayan fonksiyon. glibcde de olmadığı için haliyle Linux'lerde de göremezsiniz.
Gene de linux'te getch benzeri fonksiyon kullanmak isterseniz, termios ile terminalin özelliklerini değiştirmeyi deneyin.* * * *
sertw
04 Mart 2006 03:38
Bu konuda bildiklerinizi bizlerle paylaşabilirsiniz
Tabi bunun için yazarsanız giriş yapmalı, yazar değilseniz yazar olmalısınız.


Bu başlığa bkz veren girişlerin başlıkları nedir?
» getche » getch


Bu başlığa bkz veren girişler başka hangi başlıklara bkz verdiler?
» return » _WIN32 » elif » __unix__ » Dev-C++ » echo » char » include » defined » conio.h » _CONIO_H_ » c » Linux » endif » ifdef » Windows » Unix » _INC_CONIO » WIN32 » stty » getchar » else » system

© 2005, Bilişim Kulübü. (1109 ms)
Ne yapabilirsin: SubtitleClick ile İngilizceni Geliştir, Çınar Framework ile kod yaz, Eglencelik.org'ta biraz eğlen