C語言中的clock()函數


clock_t clock(void)

返回程序執行起(一般為程序開頭),處理器時鍾所使用的時間。

其中,clock_t 是一個長整型,它是一個適合存儲處理器時間的類型。

clock() 的實際意義是指“進程啟動到調用clock()函數經過了多少CPU時鍾計時單元”,借助 CLOCKS_PER_SEC 這個常量可以把 clock_t 轉化為以秒為單位的數值。

用法示例,測量一個例程的運行時間:

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

int sum(int n)
{
    int res = 0;
    if (n < 1)
    {
        printf("錯誤!\n");
        return res;
    }
    for(int i = 1; i <= n; i++)
        res += i * i;
    return res;
}

int sum2(int n)
{
    int res = 0;
    if (n < 1)
    {
        printf("錯誤!\n");
        return res;
    }
    res = n * (n + 1) * (2 * n + 1) / 6;
    return res;
}


// 測試函數
int main()
{
    clock_t start_time, end_time;

    start_time = clock();
    for (int i = 0; i < 10000000; ++i)
    {
        sum2(1000);
    }
    end_time = clock();
    printf("執行時間為 %f s\n", (double)(end_time - start_time) / CLOCKS_PER_SEC);

    return 0;
}

運行結果:

參考:

https://www.runoob.com/cprogramming/c-standard-library-time-h.html

https://www.cnblogs.com/yannanying/p/4342760.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM