捕获终端的强制退出(顶部的 x 按钮或 ctrl+Z)

标签 c linux shell signals

我使用 C 语言在客户端和服务器之间使用 TCP 连接进行聊天。 我在 Linux 终端上运行它。

首先,我在一个终端上运行服务器,然后在另一个终端上运行每个客户端。 除了一件事之外,一切都完成了。

我希望客户端程序能够捕获终端上 X 按钮的点击或使用 CTRL+C 关闭程序,并在进程死亡之前向服务器发送一条消息。

有办法做到这样的事情吗?

谢谢你,嘟嘟。

最佳答案

您正在寻找的是拦截系统信号。

http://en.wikipedia.org/wiki/C_signal_handling

关于捕获终端的强制退出(顶部的 x 按钮或 ctrl+Z),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17112323/

相关文章:

在循环控制条件内调用 void 函数

c - 在PIC18F中实现定时器以生成随机数

linux - 如何 merge 存储在 mercurial 存储库中的 keepass 数据库?

sqlite - 数学表达式在Google中有效,但在sqlite或KornShell中无效。

bash - 在 shell 中使用docker命令显式使用别名

c - 让 gcc getopt 示例接受长参数?

c++ - 涉及前/后增量和指针的 C 程序输出

linux - 使用 perf 确定进程何时以及为何进入不间断 sleep

c - 共享库是否使用与应用程序相同的堆?

linux - 如何在 bash 脚本中使用 for 循环复制和重命名文件?