From: olcay ors (ocors@yahoo.com)
Date: Sun 14 Jan 2001 - 11:40:45 EET
TEKRAR DIR
ASAGIDA ARAMA ILE BULDUGUM DOSDAKI
getche() ve kbhit()
KOMUTLARININ LINUX DAKI ALT PROGRAM OLARAK
KARSILIKLARI FAYDASI OLURSA SEVINIRIM
SAYGILAR
BASARILAR
SEVGILER
SIZI SEVIYORUM
OLCAY ORS
-- start of code snippet
#include <stdio.h>
#include <termios.h>
static struct termios orig, new;
static int peek = -1;
int main()
{
int ch =0;
tcgetattr(0, &orig);
new = orig;
new.c_lflag &= ~ICANON;
new.c_lflag &= ~ECHO;
new.c_lflag &= ~ISIG;
new.c_cc[VMIN] = 1;
new.c_cc[VTIME] = 0;
tcsetattr(0, TCSANOW, &new);
while(ch != 'q') {
printf("looping\n");
sleep(1);
if(kbhit()) {
ch = readch();
printf("you hit %c\n",ch);
}
}
tcsetattr(0,TCSANOW, &orig);
exit(0);
}
int kbhit()
{
char ch;
int nread;
if(peek != -1) return 1;
new.c_cc[VMIN]=0;
tcsetattr(0, TCSANOW, &new);
nread = read(0,&ch,1);
new.c_cc[VMIN]=1;
tcsetattr(0, TCSANOW, &new);
if(nread == 1) {
peek = ch;
return 1;
}
return 0;
}
int readch()
{
char ch;
if(peek != -1) {
ch = peek;
peek = -1;
return ch;
}
read(0,&ch,1);
return ch;
}
-- end of code snippet
Hope this helps!
--- "E. A. Murat EREN" <meren@comu.edu.tr> wrote:
>
> Selamlar..
>
> Linux ustunde C++ kullanarak ufak tefek konsole da
> calisan programlar yaziyorum
> fakat dos ta kullanilan conio.h gibi bir konsol
> kutuphanesi olmadigindan
> renklendirme yada imleci tasima gibi goruntu ile
> ilgili fonksiyonlari
> kullanamiyorum dogal olarak.. bu konuda biraz
> arastirma yaptim kendi capimda ve
> linuxta bu tip konsol fonksiyonlarini
> (textcolor,textbackground,gotoxy vb.)
> barindiran library lerin ncurses adli bir pakette
> oldugunu duydum.. daha oncede
> lynx kurmaya calisirken curses dosyalarini
> bulamadigini ve kurulumu kestigini
> gormustum.. ismi gecen tar.gz yi indirdim ve kurmayi
> denedim fakat hatalar
> esliginde make esnasinda cikti kurulumdan.. bende
> kullanmakta oldugum mandrake
> 7.0 cd sine dikkatlice baktim ve rpmlerini buldum
> ncurses in ve onlari kurdum
> daha sonra lynx i kurmayi denedigimde lynx hata
> wermeden kuruldu. yani suan benim
> sistemimde ncurses library leri var. fakat genede
> onun icerdigi fonksiyonlardan
> yararlanamiyorum.. derleme esnasinda sacma sapan
> errorlar weriyor. mesela 2
> parametre gonderiyorum cok fazla diyor 1 parametre
> gonderiyorum cok az diyor..
> ncurses librarylerini nasil kullanacagim konusunda
> bana yardimci olabilecek
> birisi varsa cok memnun olacagIm. belki ihtiycim
> olan bir ornektir yada
> bilemiyorum.. simdiden cok tesekkurler, iyi
> calismalar...
>
> E. A. Murat EREN
>
>
>
> Listeden cikmak icin:
> unsub linux
> mesajini listeci@bilkent.edu.tr adresine
> gonderiniz.
> Lutfen Listeci icin MIME / HTML / Turkce Aksan
> kullanmayin.
> Listeci arayuzu:
>
http://listweb.bilkent.edu.tr/yardim/bilkent/linux.html
> Liste arsivinin adresi:
> http://listweb.bilkent.edu.tr/
>
__________________________________________________
Do You Yahoo!?
Get email at your own domain with Yahoo! Mail.
http://personal.mail.yahoo.com/
Listeden cikmak icin:
unsub linux
mesajini listeci@bilkent.edu.tr adresine gonderiniz.
Lutfen Listeci icin MIME / HTML / Turkce Aksan kullanmayin.
Listeci arayuzu: http://listweb.bilkent.edu.tr/yardim/bilkent/linux.html
Liste arsivinin adresi: http://listweb.bilkent.edu.tr/