国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C > 正文

C語言中settimeofday函數和gettimeofday函數的使用

2020-01-26 14:56:59
字體:
來源:轉載
供稿:網友

C語言settimeofday()函數:設置當前時間戳
頭文件:

#include <sys/time.h>  #include <unistd.h>

定義函數:

int settimeofday(const struct timeval *tv, const struct timezone *tz);

函數說明:settimeofday()會把目前時間設成由tv 所指的結構信息,當地時區信息則設成tz 所指的結構。詳細的說明請參考gettimeofday()。

注意,在Linux下,只有root 權限才能使用此函數修改時間。

返回值:成功則返回0,失敗返回-1,錯誤代碼存于errno。

錯誤代碼:
EPERM  并非由root 權限調用settimeofday(),權限不夠。
EINVAL  時區或某個數據是不正確的,無法正確設置時間。

C語言gettimeofday()函數:獲取當前時間
頭文件:

#include <sys/time.h>  #include <unistd.h>

定義函數:int gettimeofday (struct timeval * tv, struct timezone * tz);

函數說明:gettimeofday()會把目前的時間有tv 所指的結構返回,當地時區的信息則放到tz 所指的結構中。

timeval 結構定義為:

struct timeval{  long tv_sec; //秒  long tv_usec; //微秒};

timezone 結構定義為:

struct timezone{  int tz_minuteswest; //和Greenwich 時間差了多少分鐘  int tz_dsttime; //日光節約時間的狀態};

上述兩個結構都定義在/usr/include/sys/time.h. tz_dsttime 所代表的狀態如下

  DST_NONE //不使用  DST_USA //美國  DST_AUST //澳洲  DST_WET //西歐  DST_MET //中歐  DST_EET //東歐  DST_CAN //加拿大  DST_GB //大不列顛  DST_RUM //羅馬尼亞  DST_TUR //土耳其  DST_AUSTALT //澳洲(1986 年以后)

返回值:成功則返回0,失敗返回-1,錯誤代碼存于errno。

附加說明:EFAULT 指針tv 和tz 所指的內存空間超出存取權限。

范例

#include <sys/time.h>#include <unistd.h>main(){  struct timeval tv;  struct timezone tz;  gettimeofday (&tv, &tz);  printf("tv_sec; %d/n", tv.tv_sec);  printf("tv_usec; %d/n", tv.tv_usec);  printf("tz_minuteswest; %d/n", tz.tz_minuteswest);  printf("tz_dsttime, %d/n", tz.tz_dsttime);}

執行結果:

tv_sec: 974857339tv_usec:136996tz_minuteswest:-540tz_dsttime:0

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 竹山县| 天镇县| 砀山县| 兴业县| 南充市| 清新县| 玉屏| 嘉禾县| 山阴县| 寿宁县| 乳山市| 竹北市| 汾阳市| 临沭县| 龙泉市| 定远县| 衢州市| 阿图什市| 南涧| 喜德县| 宁化县| 福贡县| 保德县| 莱州市| 台江县| 佛教| 东辽县| 固阳县| 河曲县| 蓝田县| 洛川县| 沂源县| 苗栗县| 乐业县| 宝坻区| 鲁甸县| 马公市| 辽源市| 霍城县| 大城县| 惠安县|