Η συνάρτηση σήματος () στο C ++ ορίζει τον χειριστή σφαλμάτων για το καθορισμένο σήμα.
σήμα () Πρωτότυπο
άκυρο (* σήμα (int sig, void (* func) (int))) (int);
Η signalσυνάρτηση ορίζει μια μέθοδο χειρισμού του σήματος. Ο χειριστής σήματος μπορεί να ρυθμιστεί έτσι ώστε να εκτελείται μία από τις ακόλουθες ενέργειες:
- Προεπιλεγμένος χειρισμός σήματος.
 - Αγνοήστε το σήμα.
 - Η λειτουργία που ορίζεται από τον χρήστη καλείται να χειριστεί το σήμα.
 
Ορίζεται στο αρχείο κεφαλίδας "> αρχείο κεφαλίδας.
σήμα () Παράμετροι
- sig: Το σήμα που πρέπει να χειριστεί ο χειριστής σήματος. Μπορεί να πάρει μία από τις ακόλουθες τιμές:
- SIGABRT
 - SIGFPE
 - SIGILL
 - ΥΠΟΓΡΑΦΗ
 - SIGSEGV
 - ΥΠΟΓΡΑΦΟΣ
 
 - χειριστής: Ο χειριστής σήματος που χειρίζεται το σήμα. Μπορεί να είναι ένα από τα ακόλουθα:
- SIG_DFL: Προεπιλεγμένος χειρισμός.
 - SIG_IGN: Αγνοήστε το σήμα.
 - Δείκτης σε μια λειτουργία: Λειτουργία καθορισμένη από τον χρήστη για το χειρισμό του σήματος. Η υπογραφή της συνάρτησης πρέπει να είναι ισοδύναμη με την ακόλουθη:
άκυρη διασκέδαση (int sig)
 
 
σήμα () Τιμή επιστροφής
Με επιτυχία, επιστρέφει τον προηγούμενο χειριστή σήματος και στην αποτυχία επιστρέφεται SIG_ERR.
Παράδειγμα: Πώς λειτουργεί η λειτουργία σήματος ()
 #include #include using namespace std; sig_atomic_t signalled = 0; void handler(int sig) ( signalled = 1; ) int main() ( signal(SIGINT, handler); raise(SIGINT); if (signalled) cout << "Signal is handled"; else cout << "Signal is not handled"; return 0; )
Όταν εκτελείτε το πρόγραμμα, η έξοδος θα είναι:
Το σήμα αντιμετωπίζεται








