时钟()无法正常工作

标签 c datetime clock

我的代码如下所示:

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

int main(void) {
    time_t loop_begin, loop_end, scanf_begin, scanf_end;
    double loop_time, scanf_time;
    int q;


    loop_begin = clock();
    //some big loop
    loop_end = clock();

    loop_time = (double)(loop_end - loop_begin) / CLOCKS_PER_SEC;
    printf("%.6f\n", loop_time);


    scanf_begin = clock();
    printf("qwe> ");scanf("%d", &q);
    scanf_end = clock();

    scanf_time = (double)(scanf_end - scanf_begin) / CLOCKS_PER_SEC;
    printf("%.6f\n", scanf_time);

    return 0;
}

但是输出是这样的:

20.087593
qwe> 543       
0.000073

我错过了什么还是这正常?如果这是正常的,您有什么建议?

最佳答案

clock 测量 CPU 时间。当您的程序等待按键时,它会在系统调用中被阻止,并且不会使用任何处理器时间。

来自 Linux 程序员手册:

NAME

clock - determine processor time

SYNOPSIS

#include <time.h>
clock_t clock(void);

DESCRIPTION

The clock() function returns an approximation of processor time used by the program.

RETURN VALUE

The value returned is the CPU time used so far as a clock_t; to get the number of seconds used, divide by CLOCKS_PER_SEC. If the processor time used is not available or its value cannot be represented, the function returns the value (clock_t) -1.

关于时钟()无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36091472/

相关文章:

c - 转换 cat file.txt | wc -l 程序代码c

c - C 中的动态连续 3D 数组

php - MySQL PHP 从数据库表中获取倒数时间

python - Python中的代码计时 block 而不将其放入函数中

javascript - 如何在时钟中获得 "0"到 "1"之前的 "9"

android - 在 Android 上获取本地时间

在 C 中计算给定范围内的 3 的幂

c - 获取每个页面错误的信号

SQLite ORDER BY 时间戳没有给出预期结果

Javascript 时钟变为负值