test1.c

来自「这个是学习嵌入式开发的重要例子」· C语言 代码 · 共 65 行

C
65
字号
#include <stdio.h>#include <signal.h>void handle_signal(int s);void handle_signal_test(int s);int global_break_flag = 0;int main(int argc, char **argv){  //signal(SIGINT, SIG_IGN);  //signal(SIGINT, SIG_DFL);#if 0  fprintf(stdout, "SIGKILL = %d\n", SIGKILL);  fprintf(stdout, "SIGCHLD = %d\n", SIGCHLD);#endif  // void (*signal(int sig, void (*func)(int)))(int);  // signal(int sig, void(*func)(int));  signal(SIGINT, handle_signal);  //signal(SIGTERM, handle_signal);  for (;;)  {    if (global_break_flag > 0)    {      fprintf(stdout, "break for loop.\n");      break;    }  }  unsigned long original_handler;  original_handler = signal(SIGINT, handle_signal_test);  fprintf(stdout, "The original SIGINT handler is 0x%x\n", original_handler);  fprintf(stdout, "handle_siganl() is 0x%x\n", handle_signal);  global_break_flag = 0;  for (;;)  {    if (global_break_flag > 0)    {      fprintf(stdout, "break for loop.\n");      break;    }  }  return 0;}void handle_signal(int s){  global_break_flag++;  fprintf(stdout, "[%s:%d:%s]Cached %d signal.\n", __FILE__, __LINE__, __func__, s);}void handle_signal_test(int s){  global_break_flag++;  fprintf(stdout, "[%s:%d:%s]Cached %d signal.\n", __FILE__, __LINE__, __func__, s);}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?