Nom de la fonction : augmenter
Fichier d'en-tête : <stdio.h>
Prototype de fonction : int raise(int sig);
Fonction : Envoyer un signal au programme en cours d'exécution
Paramètres : le nom du signal à envoyer
Valeur de retour : 0 en cas de succès, non-0 en cas d'échec
Supplément : Le programme SIGABRT (Signal Abort) se termine anormalement.
SIGFPE (Signal Floating-Point Exception) Erreur d'opération arithmétique, telle qu'une division par 0 ou un débordement (pas nécessairement une opération à virgule flottante).
SIGILL (Signal Illegal Instruction) Image de fonction illégale, telle qu'une instruction illégale, généralement provoquée par une variation du code ou une tentative d'exécution de données.
SIGINT (Signal Interrupt) Le signal d'interruption, tel que ctrl-C, est généralement généré par l'utilisateur.
SIGSEGV (Signal Segmentation Violation) Accès illégal à la mémoire, tel que l'accès à une unité de mémoire inexistante.
SIGTERM (Signal Terminate) Signal de demande de terminaison envoyé à ce programme.
Exemple de programme : Déterminez si la division est significative. Lorsque le diviseur est 0, envoyez un signal.
#include<signal.h>#include<stdio.h>intmain(void){inta,b;a=10;b=0;printf(begin-----n);if(b==0) raise(SIGFPE);//Si le diviseur est 0, envoyer un signal pour terminer le programme a=a/b;printf(begin-----n);return0;}
Résultats en cours d'exécution
commencer-----