在C語言中,可以使用time.h頭文件中的函數來進行時間控制。下面是一些常用的時間控制函數:
clock()函數:用于獲取程序執行的CPU時間,返回的是一個時鐘滴答數(clock tick)。
time()函數:用于獲取當前的系統時間,返回的是從1970年1月1日午夜起到當前時間的秒數。
sleep()函數:用于讓程序暫停執行一段時間,參數是暫停的秒數。
gettimeofday()函數:用于獲取當前的系統時間,精確到微秒級別。
下面是使用這些函數實現簡單的時間控制的示例代碼:
#include <stdio.h>
#include <time.h>
#include <unistd.h>
int main() {
clock_t start_time = clock(); // 獲取程序開始執行的CPU時間
time_t current_time = time(NULL); // 獲取當前系統時間
printf("Program start time: %s", ctime(¤t_time));
sleep(1); // 暫停1秒鐘
current_time = time(NULL); // 再次獲取當前系統時間
printf("Program end time: %s", ctime(¤t_time));
clock_t end_time = clock(); // 獲取程序結束執行的CPU時間
double cpu_time_used = ((double) (end_time - start_time)) / CLOCKS_PER_SEC;
printf("CPU time used: %f seconds\n", cpu_time_used);
return 0;
}
這個示例程序使用clock()函數和time()函數來獲取程序開始和結束的時間,使用sleep()函數暫停1秒鐘,然后再次獲取當前系統時間。最后,使用clock()函數計算出程序執行的CPU時間。注意,CLOCKS_PER_SEC是一個宏定義,表示每秒鐘的時鐘滴答數。