如何在 C 中捕捉 Ctrl+C?

最佳答案

带有信号处理程序。

这是一个简单的示例,翻转 bool 中使用的 main() :

#include <signal.h>

static volatile int keepRunning = 1;

void intHandler(int dummy) {
    keepRunning = 0;
}

// ...

int main(void) {

   signal(SIGINT, intHandler);

   while (keepRunning) {
      // ...

2017 年 6 月编辑:它可能关注的对象,尤其是那些渴望编辑此答案的人。看,我七年前写了这个答案。是的,语言标准发生了变化。如果您真的必须改善世界,请添加您的新答案,但保留我的原样。由于答案上有我的名字,我希望它也包含我的话。谢谢你。

关于在 C 中捕捉 Ctrl-C,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4217037/

10-12 16:00