ฟังก์ชัน Raise() ใช้เพื่อส่งสัญญาณไปยังโปรแกรม ฟังก์ชันสัญญาณที่กำหนดไว้ล่วงหน้า () ถูกเรียกใช้ มีการใช้งานเพื่อตรวจสอบว่าจะไม่สนใจสัญญาณหรือเรียกใช้ตัวจัดการสัญญาณ มีการประกาศในไฟล์ส่วนหัว "signal.h" คืนค่าศูนย์ หากสำเร็จ มิฉะนั้น ค่าที่ไม่ใช่ศูนย์
นี่คือไวยากรณ์ของตัวยก () ในภาษาซี
int raise(int signal)
ที่นี่
สัญญาณ − หมายเลขสัญญาณที่จะเรียกใช้
นี่คือตัวอย่างการยก () ในภาษาซี
ตัวอย่าง
#include <signal.h> #include <stdio.h> void handler(int sig) { printf("Signal received : %d\n", sig); } int main() { signal(SIGILL, handler); printf("Sending signal : %d\n", SIGILL); raise(SIGILL); return 0; }
ผลลัพธ์
Sending signal : 4 Signal received : 4
ในโปรแกรมข้างต้น ตัวจัดการฟังก์ชันถูกกำหนดก่อนฟังก์ชัน main() และในฟังก์ชันหลัก สัญญาณ () จะถูกเรียกใช้และ SIGILL ( Signal Illegal Instruction ) จะถูกส่งและรับ
signal(SIGILL, handler); printf("Sending signal : %d\n", SIGILL); raise(SIGILL);