Strg+C
-
Hallo !!
ich hätte mal ne Frage wenn ich ein Programm welches in einer Endlosschleife ist mittels Strg+c abbreche, kann ich dieses Signal abfangen und bevor das Programm abgebrochen wird noch ein letztes Ereigniss durchführen ??
Wenn Ja wie ??
Lieben Gruß Cefour
-
Jep, das Signal heißt SIGINT und wird (in etwa) so abgefangen:
#include <stdio.h> #include <signal.h> #include <stdlib.h> void handler (int signal) { (void) signal; printf ("Aiee\n"); exit (1); } int main () { signal (SIGINT, handler); long int i = 0; while (1) { printf ("\r%d", i); ++i; } printf ("Biee\n"); }
http://www.cs.utah.edu/dept/old/texinfo/glibc-manual-0.02/library_21.html
-
Danke für die schnelle hilfe
-
First-chance exception at 0x7c874fed in test2.exe: 0x40010005: Control-C.
Wenn ich nach dem Compilieren und Starten CTRL+C drücke bekomme ich in meinem Compiler das.
-
Du bist ja auch im Linux Forum
-
d.h. hier darf man murks machen und schlechte sachen coden, da das system dies kompensiert? oder wie darf ich das nun verstehen?
-
'#' schrieb:
d.h. hier darf man murks machen und schlechte sachen coden, da das system dies kompensiert? oder wie darf ich das nun verstehen?
Was kompensiert das System? Das Strg-C wird korrekt abgefangen und gehandelt, Mist machen tut Deine .exe-Datei!