Programmieren - alles kontrollieren 4.939 Themen, 20.672 Beiträge

Tastatureingaben abfangen mit C

Synthetic_codes / 3 Antworten / Flachansicht Nickles

Hi, ich schreibe gerade an einem Programm, das als eine art KonsolenNetzwerkServer arbeitet. ich suche nun eine Methode mit der ich spezielle tasten abfangen kann, um das Programm zu beenden. (zb wenn man esc drückt, beendet das programm sich). leider funktioniert das nicht mit getchar/getc(stdin). gibt es nun eine C-Funktion aus der libc, mit der ich tastatureingaben überwachen kann, das mir den ASCII Code der gedrückten taste zurückgibt? momentan ist das programm für windows programmiert, es soll aber wenn es fertig ist auf linux portiert werden können, deshalb sollen keine WIN32 API funktionen verwendet werden(über das nachrichten system wäre das ja auch kein problem(mit WM_KEYDOWN)).

PS: hat einer vielleicht die opcodes folgender assembler befehle parat/weiss wo ich die finde:

mov eax, irgendwas
mor ebx, irgendwas
mov ecx, irgendwas
mov edx, irgendwas
mov irgendwas, eax
mov irgendwas, ebx
mov irgendwas, ebx
mov irgendwas, ebx

Thanx schonmal

'); DROP TABLE users;--
bei Antwort benachrichtigen
Synthetic_codes Nachtrag zu: „Tastatureingaben abfangen mit C“
Optionen

re, danke schonmal, mit _getch() läuft das schon ganz gut. wegen dem assembler, das war für ein anderes projekt.
aber eine frage... es muss doch noch einen weg geben(im übrigen fällt mir grad ein dass man mit asembler zb die BIOS Tastatur interrupts ansprechen könnte oder?)

auf jeden fall mal danke, hat mich ein grosses stück weiter gebracht. curses benutze ich unter linux bereits, allerdings ist die sache die dass bei meinem compiler ( DevC++ -> www.bloodshed.net) der ignoriert den kompilerbefehl zum statischen linken einfach, sodass ich die ganze curses lib mit meinem programm liefern müsste. wenn du weisst wie ich mit dem guten alten (und freien) DevC++ statisch linken kann dann wäre curses allerdings perfekt.

'); DROP TABLE users;--
bei Antwort benachrichtigen