Computer >> Máy Tính >  >> Lập trình >> lập trình C

hàm raise () trong C / C ++

Hàm raise () được sử dụng để gửi các tín hiệu đến chương trình. Tín hiệu hàm được xác định trước () được gọi. Nó được thực hiện để kiểm tra xem nó sẽ bỏ qua tín hiệu hoặc gọi bộ xử lý tín hiệu. Điều này được khai báo trong tệp tiêu đề "signal.h". Nó trả về 0, nếu thành công, nếu không, giá trị khác 0.

Đây là cú pháp của raise () trong ngôn ngữ C,

int raise(int signal)

Đây,

tín hiệu - Số tín hiệu được gọi.

Đây là một ví dụ về raise () trong ngôn ngữ C,

Ví dụ

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

Đầu ra

Sending signal : 4
Signal received : 4

Trong chương trình trên, một trình xử lý hàm được định nghĩa trước hàm main () và trong hàm main, signal () được gọi và SIGILL (Lệnh bất hợp pháp của tín hiệu) được gửi và nhận.

signal(SIGILL, handler);
printf("Sending signal : %d\n", SIGILL);
raise(SIGILL);