Isyarat C ++ () - Perpustakaan Piawai C ++

Fungsi isyarat () dalam C ++ menetapkan pengendali ralat untuk isyarat yang ditentukan.

isyarat () Prototaip

 kekosongan (* isyarat (int sig, kekosongan (* func) (int))) (int);

Yang signalfungsi mentakrifkan kaedah untuk mengendalikan isyarat. Pengendali isyarat dapat diatur sehingga salah satu tindakan berikut dilakukan:

  • Pengendalian isyarat secara lalai.
  • Abaikan isyarat.
  • Fungsi yang ditentukan pengguna dipanggil untuk mengendalikan isyarat.

Ia ditakrifkan dalam header file "> header file.

isyarat () Parameter

  • sig: Isyarat untuk dikendalikan oleh pengendali isyarat. Ia boleh mengambil salah satu nilai berikut:
    • SIGABRT
    • SIGFPE
    • SIGILL
    • TANDATANGAN
    • SIGSEGV
    • TANDATANGAN
  • pengendali: Pengendali isyarat yang mengendalikan isyarat. Ini boleh menjadi salah satu perkara berikut:
    • SIG_DFL: Pengendalian lalai.
    • SIG_IGN: Abaikan isyarat.
    • Pointer ke fungsi: Fungsi yang ditentukan pengguna untuk mengendalikan isyarat. Tandatangan fungsi mestilah sama dengan yang berikut:
       keseronokan kosong (int sig);

isyarat () Nilai pulangan

Pada kejayaan, ia mengembalikan pengendali isyarat sebelumnya dan pada kegagalan SIG_ERR dikembalikan.

Contoh: Bagaimana fungsi isyarat () berfungsi

 #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; )

Semasa anda menjalankan program, outputnya adalah:

 Isyarat dikendalikan

Artikel menarik...