编写一个C程序,当按下Ctrl+Z时不会终止。它打印一条消息“不能使用Ctrl+Z暂停”,并继续执行。
null
我们可以使用 Unix信号 为了这个。按下Ctrl+Z时,生成SIGTSTP信号。
SIGTSTP 信号由控制终端发送给进程,请求其停止(终端停止)。我们可以捕捉这个信号并运行我们自己定义的信号。 标准C库函数 信号() 可用于为上述任何信号设置处理程序。
// C program that does not suspend when // Ctrl+Z is pressed #include <stdio.h> #include <signal.h> // Signal Handler for SIGTSTP void sighandler( int sig_num) { // Reset handler to catch SIGTSTP next time signal (SIGTSTP, sighandler); printf ( "Cannot execute Ctrl+Z" ); } int main() { // Set the SIGTSTP (Ctrl-Z) signal handler // to sigHandler signal (SIGTSTP, sighandler); while (1) { } return 0; } |
输出:
Cannot execute Ctrl+Z
本文由 普拉莫德·库马尔 .如果你喜欢GeekSforgek,并想贡献自己的力量,你也可以使用 贡献。极客。组织 或者把你的文章寄到contribute@geeksforgeeks.org.看到你的文章出现在Geeksforgeks主页上,并帮助其他极客。
如果您发现任何不正确的地方,或者您想分享有关上述主题的更多信息,请写下评论。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END