Forum » Programiranje » [c++] Preverjanje, če je bil pritisnjena tipka na tipkovnici
[c++] Preverjanje, če je bil pritisnjena tipka na tipkovnici
Simz ::
LP,
imam en problem in sicer, da ne najdem funkcije v c++, ki bi preverjala, če je bil pritisnjen katerokoli znak.
Podobno si lahko naredil v pascalom s keypressed funkcijo. Nekaj sem že našel in sicer za windows platformo, rabil pa bi za linux ( v upoštev ne prideta kbhit in kepressed()) - g++ compiler
Hvala
LP,
imam en problem in sicer, da ne najdem funkcije v c++, ki bi preverjala, če je bil pritisnjen katerokoli znak.
Podobno si lahko naredil v pascalom s keypressed funkcijo. Nekaj sem že našel in sicer za windows platformo, rabil pa bi za linux ( v upoštev ne prideta kbhit in kepressed()) - g++ compiler
Hvala
LP,
SimZ
- spremenil: Simz ()
napsy ::
Primer iz Beej's Guide to Network Programming:
/*
** select.c -- a select() demo
*/
#include <stdio.h>
#include <sys/time.h>
#include <sys/types.h>
#include <unistd.h>
#define STDIN 0 // file descriptor for standard input
int main(void)
{
struct timeval tv;
fd_set readfds;
tv.tv_sec = 2;
tv.tv_usec = 500000;
FD_ZERO(&readfds);
FD_SET(STDIN, &readfds);
// don't care about writefds and exceptfds:
select(STDIN+1, &readfds, NULL, NULL, &tv);
if (FD_ISSET(STDIN, &readfds))
printf("A key was pressed!\n");
else
printf("Timed out.\n");
return 0;
} "If you die, you die. But when you live you live. There is no time to waste."
Simz ::
Najprej bi se rad zahvalil za odgovor. Sicer sem to ze napisal. Problem nastane, ko hočem to uporabiti v zanki. Prvic se deluje pravilno, potem pa sploh ne caka več, ampak uposteva, kot bi ze blo nekaj pritisnjeno (zanka brez konca)! Poskusil sem tudi z FD_CLR(STDIN,&readfds) ampak zadeva ne deluje.
npr.
for(;;)
{
select(STDIN+1, &readfds, NULL, NULL, &tv);
if (FD_ISSET(STDIN, &readfds))
printf("A key was pressed!\n");
else
printf("Timed out.\n");
}
npr.
for(;;)
{
select(STDIN+1, &readfds, NULL, NULL, &tv);
if (FD_ISSET(STDIN, &readfds))
printf("A key was pressed!\n");
else
printf("Timed out.\n");
}
SimZ
Vredno ogleda ...
| Tema | Ogledi | Zadnje sporočilo | |
|---|---|---|---|
| Tema | Ogledi | Zadnje sporočilo | |
| » | C strukture, kazalci naloga pomocOddelek: Programiranje | 1577 (1472) | DavidJ |
| » | C osnovaOddelek: Programiranje | 1650 (1165) | RunoTheDog |
| » | Program v COddelek: Programiranje | 2076 (1915) | darkkk |
| » | [c++] Kako ugotoviti katera tipka je bila pritisnjenaOddelek: Programiranje | 1588 (1360) | 64202 |
| » | C: connect() funkcija, kako nastaviti timeoutOddelek: Programiranje | 1960 (1741) | fefko-the-bulldog |