温馨提示×

c语言pause函数怎么使用

小亿
336
2023-12-05 02:01:10
栏目: 编程语言

在C语言中,pause()函数用于使程序暂停执行,直到接收到一个信号。

pause()函数在 <unistd.h> 头文件中声明,其原型如下:

#include <unistd.h>

int pause(void);

使用pause()函数时,程序会进入一个无限循环,直到接收到一个信号才会继续执行。可以使用 Ctrl+C 组合键来发送 SIGINT 信号给程序来中断pause()的等待。

下面是一个简单的使用pause()函数的示例:

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

void handle_signal(int sig) {
    printf("Received a signal: %d\n", sig);
}

int main() {
    signal(SIGINT, handle_signal);  // 注册信号处理函数

    printf("Pause program execution...\n");
    pause();  // 程序暂停等待信号

    printf("Resume program execution...\n");
    return 0;
}

在上面的示例中,signal()函数用于注册信号处理函数handle_signal(),当接收到 SIGINT 信号时,会调用handle_signal()函数进行处理。然后程序执行pause()函数,暂停等待信号的到来。当我们在终端中按下 Ctrl+C 组合键时,程序会接收到 SIGINT 信号,handle_signal()函数会被调用,打印出一个消息。接着程序继续执行,打印出"Resume program execution…"消息,最后结束程序的执行。

0