用c语言编程一个计时器
时间: 2024-10-08 22:14:02 浏览: 41
在C语言中编写一个简单的计时器,通常可以使用系统时间函数`time()`配合定时器循环来实现。以下是一个基础示例,它会在每秒钟打印一次当前的时间:
```c
#include <stdio.h>
#include <unistd.h> // 包含usleep()函数
// 定义一个定时器函数
void timer(int seconds) {
struct timespec ts;
clock_gettime(CLOCK_MONOTONIC, &ts); // 获取当前时间
while (seconds > 0) { // 循环直到秒数为0
printf("当前时间: %ld.%09lds\n", ts.tv_sec, ts.tv_nsec);
usleep(1000 * 1000); // 等待1毫秒
clock_gettime(CLOCK_MONOTONIC, &ts); // 更新时间
seconds--;
}
}
int main() {
int seconds_to_count = 5; // 指定计时秒数
timer(seconds_to_count);
return 0;
}
```
这个程序会持续打印指定秒数后的当前时间,然后停止。如果你想要用户输入一个计时时间,可以在主函数中加入输入处理。
注意:`clock_gettime()`函数用于获取高精度时间戳,而`usleep()`用于暂停程序执行一定时间。实际应用中,可能需要根据具体需求调整睡眠时间和精确度。
阅读全文