gpt4 book ai didi

c - 跟踪调用了多少个信号?

转载 作者:行者123 更新时间:2023-11-30 17:35:05 25 4
gpt4 key购买 nike

我创建了一个程序,其中信号调用安装一个新的信号处理程序“signum”,并且基本上在按下终端特殊字符(例如 CRTL-C)时显示一条消息。

我想知道如果我想跟踪 CRTL-C 被按下的次数怎么办?我该如何实现呢?谢谢。

#include    <stdio.h>
#include <signal.h>

main() {
void f(int);
int i;
int count = 0;

signal( SIGINT, f );

for (i = 0; i < 5; i++) {
printf("...I am waiting for you...\n");
sleep(1);
}

void f(int signum) {
printf("Haha, you clicked me!\n");
}

最佳答案

使用静态变量:

void f(int signum) {
static int cnt = 0;
printf('Hahah, you clicked me %d time(s)!', ++cnt);
}

如果您希望该计数在其他地方可用,请改用全局变量。

关于c - 跟踪调用了多少个信号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23119499/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com