 |
Unix programming question |
 |
27.08.2002, 08:23
|
#1
|
4294967296
Join Date: 03 2002
Location: /proc/1
Age: 40
Posts: 379
Rep Power: 0
|
Unix programming question
Zdarova Lyudi
Ya znayu chtop etot topic imeet malo obshego
s programmiraovaniem, no ya bil bi super
extremely blagodaren vam esli bi vi mne otvetili na
odin vopros.
Vot cikl
-------------
do {
a++;
} while ('?')
--------------
chto nado postavit' vmesto '?'-a chtob etot cikl
ostanavlivalsy pri najatii klavishi? To est' ya znayu
funkcii tipa bioskey() ili kbhit(), no v standartnoy linuxovskoy
biblioteke ya ix ne nashel  .
10x
Boyov.
__________________
Free your mind and your OS will follow
|
|
|
27.08.2002, 09:18
|
#2
|
ЙЦУКЕН
Join Date: 07 2002
Location: 0x68,0x69,0x72, 0x69,0x6e,0x67, 0x20,0x6e,0x6f, 0x77
Age: 55
Posts: 3,118
Rep Power: 0
|
не надейся ... это тебе не windows и не дос
не дадут такого сделать
ну а что-то приблизительное ... тебе надо включить у терминала режим, -тоб он пересылал бы тебе символы сразу
а то так они пихаются в буфер ... и отдаются обыкновенно только после нажатия ентер
|
|
|
27.08.2002, 09:40
|
#3
|
4294967296
Join Date: 03 2002
Location: /proc/1
Age: 40
Posts: 379
Rep Power: 0
|
Na samom dele ya uje sdelal tak chtobi u menya pod linux getch() normalno zarabotal, to est' on reagiruet bez najatiya <Enter>-a , ya v svoyu programmu takoy kusok koda vstavil kotoriy stavit terminal v "non canonical mode"(a v samom konce programmi estestvenno obratno v "canonical"). No razve vmesto '?' a mojno ispolzovat' getch() ?
10x
__________________
Free your mind and your OS will follow
|
|
|
27.08.2002, 16:03
|
#4
|
ЙЦУКЕН
Join Date: 07 2002
Location: 0x68,0x69,0x72, 0x69,0x6e,0x67, 0x20,0x6e,0x6f, 0x77
Age: 55
Posts: 3,118
Rep Power: 0
|
елы - палы ... ну отвыкайте вы от этого [censored] ДОС-а  ))
ee. копай с сторону fctnl, O_NONBLOCK, может и заработает
|
|
|
28.08.2002, 07:15
|
#5
|
4294967296
Join Date: 03 2002
Location: /proc/1
Age: 40
Posts: 379
Rep Power: 0
|
Ya nashel finkcii (tipa poll() i select()) , kotorie reagiruyut na najatiye klavishi, no problema v tom, chto oni vozvrashayut libo 1 libo 0 (tipa klavisha bila najata ili ne bila najata), no problema v tom, chto mne nado znat' konkretno kakaya klavisha bila najata.
Mojet u kogo nibud' est' kakiye libo idei ?
Spasibo
__________________
Free your mind and your OS will follow
|
|
|
28.08.2002, 18:38
|
#6
|
ЙЦУКЕН
Join Date: 07 2002
Location: 0x68,0x69,0x72, 0x69,0x6e,0x67, 0x20,0x6e,0x6f, 0x77
Age: 55
Posts: 3,118
Rep Power: 0
|
если я все правильно понимаю в юниксах, poll и select ничего общего не имеют  ))
2. они работают с FD, а тебе нужны функции таботающие с терминалом ....
|
|
|
29.08.2002, 10:09
|
#7
|
4294967296
Join Date: 03 2002
Location: /proc/1
Age: 40
Posts: 379
Rep Power: 0
|
OK, ya pereformuliruyu vopros
Esli ya vklyuchil u terminala rejim chtobi on peresilal mne simvoli srazu, kakaya funkciya skajet mne  bila li knopka najata , i esli bila to kakaya?
Wishes
Artem.
__________________
Free your mind and your OS will follow
|
|
|
29.08.2002, 22:07
|
#8
|
Младенец
Join Date: 08 2002
Location: Yerevan
Posts: 4
Rep Power: 0
|
Snachala ustanavlivaesh' v fctl O_NONBLOCK,
a potom, vmesto '?' stavish' fread(str, stdin...)
fread vozvraschaet 0 esli klavisha ne byla nazhata, ili >0 v protivnom sluchae... klavisha potom izvlekaetsya is str.
eto konkretno rabotayuschaya model', no mozhno escho poigratsya.. ..naprimer ispol'zovat' feo()
man fcntl, man fread recommended
armench aka levontiy
|
|
|
30.08.2002, 00:42
|
#9
|
ЙЦУКЕН
Join Date: 07 2002
Location: 0x68,0x69,0x72, 0x69,0x6e,0x67, 0x20,0x6e,0x6f, 0x77
Age: 55
Posts: 3,118
Rep Power: 0
|
остается только согласится
|
|
|
31.08.2002, 17:57
|
#10
|
4294967296
Join Date: 03 2002
Location: /proc/1
Age: 40
Posts: 379
Rep Power: 0
|
Many many many Thanks for useful info.
Boyov.
__________________
Free your mind and your OS will follow
|
|
|
01.09.2002, 00:27
|
#11
|
Консервативн
Join Date: 01 2002
Location: Кавказская Албания
Posts: 889
Rep Power: 0
|
da, i eshe O_NONBLOCK upotreblyaut pri FIFO.
__________________
Праздник к нам приходит...
|^^^^^^^^^'''^\| ||\__
| ВОДКА-ВОДКА | ||','''|'''''''\_____,_
| _..... _ | ||_ _|'__|_____||.........| |
'(@)'(@)'(@)''''''''''''''''''''''*|(@)""""|(@)*
|
|
|
All times are GMT. The time now is 00:15. |
|
|