kennen:lib:raise
no way to compare when less than two revisions
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
— | kennen:lib:raise [2012-04-11 17:23] (aktuell) – angelegt - Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== raise() ====== | ||
+ | ''# | ||
+ | |||
+ | <code cpp> | ||
+ | int raise (int signum) | ||
+ | </ | ||
+ | Löst ein Signal '' | ||
+ | |||
+ | Warnung: | ||
+ | Destruktoren | ||
+ | [[..: | ||
+ | werden nicht aufgerufen. | ||
+ | In C++ sollte der Mechanismus der | ||
+ | [[..: | ||
+ | |||
+ | ==== Parameter ==== | ||
+ | | '' | ||
+ | ==== Ergebnis ==== | ||
+ | Rückgabewert: | ||
+ | |||
+ | ==== Siehe auch ==== | ||
+ | [[abort]], | ||
+ | [[signal]]. | ||
+ | |||
+ | ==== Beispiel ==== | ||
+ | <code cpp raise.cpp> | ||
+ | #include < | ||
+ | #include < | ||
+ | using namespace std; | ||
+ | |||
+ | int ist_prim(int p) | ||
+ | { | ||
+ | int erg = p>=2; | ||
+ | for (int i = 2; i < p; ++i) | ||
+ | { | ||
+ | if (p%i == 0) erg = 0; | ||
+ | } | ||
+ | return erg; | ||
+ | } | ||
+ | |||
+ | int max_prim = 2; | ||
+ | |||
+ | void tschuess(int num) | ||
+ | { | ||
+ | printf(" | ||
+ | signal(SIGINT, | ||
+ | raise(SIGINT); | ||
+ | } | ||
+ | |||
+ | void zwischenbericht(int num) | ||
+ | { | ||
+ | static int versuch = 1; | ||
+ | printf(" | ||
+ | signal(SIGINT, | ||
+ | } | ||
+ | |||
+ | int main() | ||
+ | { | ||
+ | printf(" | ||
+ | signal(SIGINT, | ||
+ | for (int n = 1; n > 0; ++n) | ||
+ | { | ||
+ | if (ist_prim(n)) max_prim = n; | ||
+ | } | ||
+ | return 0; | ||
+ | } | ||
+ | </ | ||
kennen/lib/raise.txt · Zuletzt geändert: 2012-04-11 17:23 von 127.0.0.1