000
05.04.2007, 17:35 Uhr
flappinski
|
Hallo Leute, ich bin einfach zu doof, das folgende Problem zu lösen: ich will, das mein Program bei CTRL+C noch die Daten, die bisher gesammelt wurden rausschreibt. Nun bin ich mit sigaction und co schon ziemlich weit, siehe hier:
C++: |
// function, when CTRL-C is pressed static void handler(int signum) { std::cerr << "processed interrupped -> will write out data so far\n";
***
exit(1); }
int main(int argc, char *argv[] ){
struct sigaction sa;
// initialize signaling for the CTR-C Mode sa.sa_handler = handler; sigemptyset(&sa.sa_mask); sa.sa_flags = SA_RESTART; /* Restart functions if interrupted by handler */ if (sigaction(SIGINT, &sa, NULL) == -1){ std::cerr << "Problems with Signal-Processing\n"; }
(....)
string data;
}
|
bei *** will ich jetzt noch auf data zugreifen. Sollte doch eigentlich ganz einfach sein, aber wie übergebe ich die Daten an die handler_Funktion?
Danke schon mal für die Hilfe, Stephan |