ฟังก์ชัน 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);