1. 程式人生 > >C++ time(NULL) 計算持續的時間長度

C++ time(NULL) 計算持續的時間長度

有時候在實際應用中要計算一個事件持續的時間長度,比如計算打字速度。在第1節計時部分中,我已經用clock函式舉了一個例子。Clock()函式可以精確到毫秒級。同時,我們也可以使用difftime()函式,但它只能精確到秒。該函式的定義如下:

double difftime(time_t time1, time_t time0);

雖然該函式返回的以秒計算的時間間隔是double型別的,但這並不說明該時間具有同double一樣的精確度,這是由它的引數覺得的(time_t是以秒為單位計算的)。比如下面一段程式:

#include <time.h> #include <stdio.h>
#include <stdlib.h> int main(void) { time_t start,end; start = time(NULL); system("pause"); end = time(NULL); printf("The pause used %f seconds.\n", difftime(end,start)); system("pause"); return 0; }

 
執行結果為:
請按任意鍵繼續. . .
The pause used 2.000000 seconds.
請按任意鍵繼續. . .

可以想像,暫停的時間並不那麼巧是整整2秒鐘。其實,你將上面程式的帶有“//<-”註釋的一行用下面的一行程式碼替換:

printf("The pause used %f seconds./n",end-start);

其執行結果是一樣的。

相關推薦

C++ time(NULL) 計算持續時間長度

有時候在實際應用中要計算一個事件持續的時間長度,比如計算打字速度。在第1節計時部分中,我已經用clock函式舉了一個例子。Clock()函式可以精確到毫秒級。同時,我們也可以使用difftime()函式,但它只能精確到秒。該函式的定義如下: double difftime

C++使用time.h庫計算持續時間

一、使用click函式,精確到毫秒(推薦使用這種) 計算演算法程式的執行時間,使用clock()函式,返回值是長整型long 函式原型為: clock_t clock(void); 其中clock_t的定義為:typedef long clock_t;說明 clock_t就是長整型

android上執行C++程式碼中的 time(NULL)獲取當前時間戳,為什麼得到的結果不對

如題,用NDK執行C++程式碼中time(NULL)函式,得到的結果不對,這是為什麼呀?? time_t current_time = time(NULL)*1000; CLog::Log(LOGDEBUG, "%ll

c程式中計算執行時間

演算法對比時使用: #include <time.h> int main( ) { clock_t start, finish; double duration; start=clock(); //....... finish=clock(); durat

徹底搞清楚 C/C++ 中日期和時間 time_t 與 struct tm,time(NULL),ctime;strftime

#include <stdio.h> #include <stdlib.h> #include <time.h> int main( void ) { long i = 10000000L;

C++中的srand(time(null))利用時間設定隨機種子產生隨機數

   首先需要宣告的是,計算機不會產生絕對隨機的隨機數,計算機只能產生“偽隨機數”。其實絕對隨機的隨機數只是一種理想的隨機數,即使計算機怎樣發展,它也不會產生一串絕對隨機的隨機數。計算機只能生成相對的隨機數,即偽隨機數。    偽隨機數並不是假隨機數,這裡的“偽”是有規律的

c# 計算執行時間

ble bsp nds 執行 c# 計算 分段 sed watch C#計算執行時間 System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch(); //開

c語言中 srand(time(NULL)); 這句話是什麽意思(尤其是 NULL

什麽 返回值 產生 con 現在時間 完成 時間 一個 div 這是兩個函數! srand函數 一個是srand函數!這是在調用rand()這個函數之前使用的!rand()是一個產生隨機數的函數!而srand是一個設置隨機數種子的函數!通常這兩個函數是一起使用的!來完成

計算Python代碼運行時間長度方法

運行時 time In 部分 int span pri code pre 在代碼中有時要計算某部分代碼運行時間,便於分析。 import time start = time.clock() run_function() end = time.clock() print s

c/c++ linux epoll系列3 利用epoll_wait設置timeout時間長度

取數據 超過 lse 返回 creat git out des poll linux epoll系列3 利用epoll_wait設置timeout時間長度 epoll_wait函數的第四個參數可以設置,epoll_wait函數的等待時間(timeout時間長度)。 例子1

c# 三種計算程序運行時間的方法

thread lis start color 計算 程序 enc 三種 c++ 三種計算c#程序運行時間的方法第一種:利用 System.DateTime.Now // example1: System.DateTime.Now method DateTime dt1 =

c/c++ linux epoll系列3 利用epoll_wait設定timeout時間長度

linux epoll系列3 利用epoll_wait設定timeout時間長度 epoll_wait函式的第四個引數可以設定,epoll_wait函式的等待時間(timeout時間長度)。 例子1,是接收端。 例子2,是傳送端。 例子1,接收端 #include <stdio.h>

如何在 C++ 程式中計算時間

1.如果在基於 Windows Win32 的程式(純C++無法使用),即可以使用 GetTickCount() 函式實現。 精確到毫秒(ms)級。 DWORD dwStart = GetTickCount(); // 程式....... DWORD dwEnd = GetTickCou

c++ 求sum(n!),n可以為極大的數 並程式計算執行時間

 此程式為用C++求1! + 2! + 3! +  …… + n! 其中n可以為極大的數,通常情況下double型只能存放1! + 2! + 3! + …… + 170!採用陣列的方法儲存資料可以做到算無窮大的數的階乘的和,期限制因素只在於程式中定義的陣列的大小。假如有比該

C#計算日期時間間隔

                      DateTime QNTime = DateTime.ParseEx

C語言如何計算演算法執行時間

C/C++中的計時函式是clock(),而與其相關的資料型別是clock_t。在MSDN中,查得對clock函式定義如下: clock_t clock( void ); 這個函式返回從“開啟這個程式程序”到“程式中

C語言程式設計 計算程式執行時間 精確到微秒

在開發過程中有時候需要計算一段程式碼執行所消耗的時間 ,使用函式gettimeofday就可以實現,並且可以精確到毫秒 gettimeofday函式原型為:      int gettimeofday(struct timeval *tv, struct timezone

c語言中關於srand((unsigned)time(NULL))和rand的區別

一直以為rand()直接生成不同的隨機數,實驗結果不對才搜了下原因,轉載分享下... 可以認為rand()在每次被呼叫的時候,它會檢視: 1) 如果使用者在此之前呼叫過srand(seed),給seed指定了一個值,那麼它會自動呼叫 srand(seed)一次來初始

[轉載]C# TimeSpan 計算時間差(時間間隔)

形式 string 當前 bubuko 閏年 tro 常用 時間日期 列表 TimeSpan 結構 表示一個時間間隔。 命名空間:System 程序集:mscorlib(在 mscorlib.dll 中) 說明: 1.DateTime值類型代表了一個從公元0001年1月1

C++學習記錄6--srand(time(NULL)產生隨機數

time() 函式:返回從1970/1/1 00:00:00到呼叫time()函式時所經過的時間,以秒為單位,所以是個整數。time(NULL)或time(0)表示在記憶體中不儲存返回的數值。標頭檔案:#include<time.h> rand()