c语言pause函数如何使用
在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
", sig);
}
int main() {
signal(SIGINT, handle_signal); // 注册信号处理函数
printf("Pause program execution...
");
pause(); // 程序暂停等待信号
printf("Resume program execution...
");
return 0;
}
在上面的示例中,signal()
函数用于注册信号处理函数handle_signal()
,当接收到 SIGINT
信号时,会调用handle_signal()
函数进行处理。然后程序履行pause()
函数,暂停等待信号的到来。当我们在终端中按下 Ctrl+C
组合键时,程序会接收到 SIGINT
信号,handle_signal()
函数会被调用,打印出一个消息。接着程序继续履行,打印出"Resume program execution…"消息,最后结束程序的履行。
TOP