Hàm clock() trả về giá trị kiểu clock_t. Nó sẽ trả về số tíc tắc mà chương trình đã chạy qua. Muốn tính số giây thì lấy số tíc tắc chia cho CLOCKS_PER_SEC. Hình như trên win 32 là bằng 1000 thì phải. Muốn biết bao nhiêu cứ in ra là biết. Anh chạy thử đoạn code dưới đây và thay đổi pauseLenght thành các giá trị khác sẽ hiểu : (Nhớ đếm thử time chạy của code xem đúng không)
#include <stdio.h>
#include <time.h>
void tickOneSecond()
{
clock_t start;
int pauseLength = 3500;
start = clock();
while( clock() < start + pauseLength )
; // pause for pauseLength
}
int main(){
clock_t start, end;
float time;
start = clock(); // get current time
printf("start : %ld " , start );
tickOneSecond() ;
end = clock(); // get current time
printf("\nend : %ld " , end);
time = (float)(end - start) / CLOCKS_PER_SEC;
printf("\ntime run : %f" , time);
printf("\nCLOCKS_PER_SEC : %ld" , CLOCKS_PER_SEC);
}
Code được code trên smartphone và chưa run nên không dám chắc về tính đúng sai
. Ai thấy sai đâu sửa giúp em.
Ngoài lề : Anh bảo mới học C mà đã mò đến thư viện time.h vậy ạ