C++ 秒表

2024 年 8 月 28 日 | 阅读 6 分钟

在本教程中,我们将学习如何在 C++ 中制作一个计时器。当键盘上的任意键被按下时,秒表开始计时,直到另一个键被按下时才结束。让我们学习如何在 C++ 中构建一个计时器。

我们将在此程序中利用一个名为 _kbhit() 的函数。

_kbhit()

它是一个检查键是否已被按下的功能。要使用此函数,必须包含 conio.h。通常,它会验证键是否已被按下。当一个键被按下时,返回一个非零值。

在 C++ 中使用 _kbhit 函数的程序示例

输出

You haven't pressed a key.
............................................
Process executed in 1.22 seconds
Press any key to continue.

我们还可以在 C++ 秒表程序中利用 delay() 方法。此函数在“dos.h”头文件中声明,用于将程序执行延迟预定毫秒数。

无符号整型毫秒是程序需要暂停的毫秒数,而 void 是 delay() 方法的返回类型,它不返回任何内容。在这里,我们利用 delay 来清楚地注意到秒表中的秒数增加。如果延迟是 5000 毫秒,它会等待 5 秒。

程序分解

我们将在程序中包含所有必要的库,以在 C++ 中构建一个秒表,以避免任何类型的错误。

在上面的代码片段中,我们实现了秒表的基本外观,其中小时用 HH 表示,分钟用 MM 表示,秒用 SS 表示。

在上面提到的 C++ 代码中,如果函数 kbhit 不为真,则 while 循环将执行,即,它是一个检查键是否已按下的功能。要使用此函数,必须包含 conio。通常,它会验证键是否已按下。当一个键被按下时,返回一个非零值。

getch() 是 get character 的缩写,conio.h 库中有一个预定义函数名为“it”。在 Turbo C 或 Turbo C++ 中,我们使用 getch() 向用户显示字符。

C++ 中创建秒表的程序

输出

    stopwatch
    HH : MM : SS
    0 : 0 : 22
    press any key to stop
    the time after pausing is 
    0 : 0 : 22

如果上面的代码在您的 IDE 上不起作用,请尝试下面的代码

我们还在程序中使用了 Sleep() 方法。

Sleep()

此函数将程序执行暂停指定的毫秒数。它在头文件“Windows.h”中声明。

程序等待 1 秒后,我们增加 SS(秒)变量。当秒变量达到 60 时,我们将其设置为零并增加 MM(分钟)变量。当分钟达到 60 时,我们将其重置为零并增加 HH(小时)变量。

程序分解

我们将包含所有必要的头文件,特别是 windows.h,它将程序执行暂停指定的毫秒数。

在这里,正如我们在上面解释的秒表代码中所做的那样,我们已经实现了秒表的基本外观,其中小时用 HH 表示,分钟用 MM 表示,秒用 SS 表示。

在上面提到的 C++ 代码中,如果函数 kbhit 不为真,则 while 循环将执行,即,它是一个检查键是否已按下的功能。要使用此函数,必须包含 conio。通常,它会验证键是否已按下。当一个键被按下时,返回一个非零值。

C++ 中秒表的另一个程序

输出

stopwatch
HH: MM: SS
0 : 0 : 0
press any key to start

当按下任意键时,计时器开始计时,29 秒后,显示以下输出

stopwatch
HH: MM: SS
0 : 0 : 29
press any key to stop

紧接着

stopwatch
HH: MM: SS
0 : 0 : 30
press any key to stop

目前,按下任意键将停止秒表并显示以下输出

stopwatch
HH: MM: SS
0 : 0 : 30
press any key to stop
the time after pausing is
0 : 0 : 30