Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Zatrzymywanie programu w konsoli za pomocą własnej kombinacji klawiszy

Ostatnio zmodyfikowano 2019-01-03 00:25
Autor Wiadomość
Bagiel
Temat założony przez niniejszego użytkownika
Zatrzymywanie programu w konsoli za pomocą własnej kombinacji klawiszy
» 2019-01-02 21:38:04
Witam,tak jak w tytule muszę stworzyć dowolną kombinacje klawiszy (inną niż CTRL+C,ALT+F4 itp) która zatrzyma program działający w konsoli.Znalazłem informacje o funkcjach getch() oraz kbhit() jednak wymagają one biblioteki conio.h która nie bardzo lubi się z linuxem.Zacząłem także kombinować coś z biblioteką ncurses.h jednak i tutaj daleko nie zaszedłem.Niżej przykład programu na którym taka kombinacja mogłaby być wykorzystana (pochodzi z ksiązki Advanced Linux Programming i wypisuje w pętli x oraz o ).Dziwi mnie że coś z pozoru tak łatwego jak zatrzymanie programu kombinacją klawiszy (czy nawet dowolnym jednym klawiszem) wymaga tyle zachodu,bo siedzę nad tym już 4 dzień i nie mogę rozgryźć.Powiedzmy ze chce zatrzymać program za pomocą q+w .Dzieki za wszelką pomoc

C/C++
#include <pthread.h>
#include <stdio.h>

void * print_xs( void * unused )
{
    while( 1 )
         fputc( 'x', stderr );
   
    return NULL;
}

int main()
{
    pthread_t thread_id;
   
   
    pthread_create( & thread_id, NULL, & print_xs, NULL );
   
    while( 1 )
         fputc( 'o', stderr );
   
    return 0;
}
P-173402
pekfos
» 2019-01-02 21:53:40
Może być Ctrl+Break?
P-173405
Bagiel
Temat założony przez niniejszego użytkownika
» 2019-01-03 00:25:27
Generalnie nie powinna to być żadna już istniejąca kombinacja która ingeruje w działanie programu (zamyka go,stopuje,pauzuje itd)
P-173409
« 1 »
  Strona 1 z 1