这个程序似乎无法拦截SIGQUIT信号虽然它可以拦截SIGINT
void sig(int sig){
printf("Got signal(%d)", sig);
}
int main(){
signal(SIGQUIT, sig);
char x[10]; fgets(x, 10, stdin);
}
我正在运行 ubuntu 20 并且运行stty -a
命令给出了第一行输出,我猜这意味着 SIGQUIT 已正确映射到^D但按下它似乎什么也没做。我也尝试使用^\因为我在quit=^\
和sttyeof=^D
说的那样感到困惑,所以如果有人可以解开两人之间的这个误会。
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;