• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            linux 下獲取系統函數的方法

             

              1C獲取系統時間的方法(linux)
              2Reference: http://net.pku.edu.cn/~yhf/linux_c/function/04.html
              3
              4asctime(將時間和日期以字符串格式表示) 
              5相關函數 
              6
              7time,ctime,gmtime,localtime
              8 
              9表頭文件 
             10
             11#include<time.h>
             12 
             13定義函數 
             14
             15char * asctime(const struct tm * timeptr);
             16 
             17函數說明 
             18
             19asctime()將參數timeptr所指的tm結構中的信息轉
             20
             21換成真實世界所使用的時間日期表示方法,然后將結果以字
             22
             23符串形態返回。此函數已經由時區轉換成當地時間,字符串
             24
             25格式為:
             26
             27“Wed Jun 30 21:49:08 1993\n”
             28 
             29返回值  
             30
             31返回一字符串表示目前當地的時間日期。
             32
             33 
             34附加說明 
             35
             36若再調用相關的時間日期函數,此字符串可能會被破壞。此函數與ctime不同處在于傳入的參數是不同的結構。
             37
             38范例 
             39
             40#include <time.h>
             41main()
             42{
             43time_t timep;
             44time (&timep);
             45printf(“%s”,asctime(gmtime(&timep)));
             46}

             47 
             48執行  Sat Oct 28 02:10:06 2000
             49 
             50 
             51
             52 
             53ctime(將時間和日期以字符串格式表示) 
             54相關函數 
             55
             56time,asctime,gmtime,localtime
             57 
             58表頭文件 
             59
             60#include<time.h>
             61 
             62定義函數 
             63
             64char *ctime(const time_t *timep);
             65 
             66函數說明 
             67
             68ctime()將參數timep所指的time_t結構中的信息轉
             69
             70換成真實世界所使用的時間日期表示方法,然后將結果以字
             71
             72符串形態返回。此函數已經由時區轉換成當地時間,字符串
             73
             74格式為“Wed Jun 30 21 :49 :08 1993\n”。若再調用相關的
             75
             76時間日期函數,此字符串可能會被破壞。
             77 
             78返回值 
             79
             80返回一字符串表示目前當地的時間日期。
             81 
             82范例
             83
             84#include<time.h>
             85main()
             86{
             87time_t timep;
             88time (&timep);
             89printf(“%s”,ctime(&timep));
             90}

             91 
             92執行  Sat Oct 28 10 : 12 : 05 2000
             93 
             94 
             95
             96 
             97gettimeofday(取得目前的時間) 
             98相關函數 
             99
            100time,ctime,ftime,settimeofday
            101 
            102表頭文件 
            103
            104#include <sys/time.h>
            105#include <unistd.h>
            106 
            107定義函數 
            108
            109int gettimeofday ( struct tim * tv , struct  timezone * tz )
            110 
            111函數說明 
            112
            113gettimeofday()會把目前的時間有tv所指的結構返回,當地時區的信息則放到tz所指的結構中。
            114tim結構定義為:
            115struct tim{
            116long tv_sec;
            117long tv_usec;
            118}
            ;
            119timezone 結構定義為:
            120struct timezone{
            121int tz_minuteswest;
            122int tz_dsttime;
            123}
            ;
            124上述兩個結構都定義在/usr/include/sys/time.h。tz_dsttime
            125
            126所代表的狀態如下
            127DST_NONE
            128DST_USA
            129DST_AUST
            130DST_WET
            131DST_MET
            132DST_EET
            133DST_CAN
            134DST_GB
            135DST_RUM
            136DST_TUR
            137DST_AUSTALT
            138 
            139返回值 
            140
            141成功則返回0,失敗返回-1,錯誤代碼存于errno。
            142
            143附加說明EFAULT指針tv和tz所指的內存空間超出存取權限
            144
            145
            146 
            147范例 
            148
            149#include<sys/time.h>
            150#include<unistd.h>
            151main(){
            152struct tim tv;
            153struct timezone tz;
            154gettimeofday (&tv , &tz);
            155printf(“tv_sec; %d\n”, tv,.tv_sec) ;
            156printf(“tv_usec; %d\n”,tv.tv_usec);
            157printf(“tz_minuteswest; %d\n”, tz.tz_minuteswest);
            158printf(“tz_dsttime, %d\n”,tz.tz_dsttime);
            159}

            160 
            161執行  tv_sec: 974857339
            162tv_usec:136996
            163tz_minuteswest:-540
            164tz_dsttime:0
            165 
            166 
            167
            168 
            169gmtime(取得目前時間和日期) 
            170相關函數 
            171
            172time,asctime,ctime,localtime
            173 
            174表頭文件 
            175
            176#include<time.h>
            177 
            178定義函數 
            179
            180struct tm*gmtime(const time_t*timep);
            181 
            182函數說明 
            183
            184gmtime()將參數timep 所指的time_t 結構中的信息
            185
            186轉換成真實世界所使用的時間日期表示方法,然后將結果由
            187
            188結構tm返回。
            189結構tm的定義為
            190struct tm
            191{
            192int tm_sec;
            193int tm_min;
            194int tm_hour;
            195int tm_mday;
            196int tm_mon;
            197int tm_year;
            198int tm_wday;
            199int tm_yday;
            200int tm_isdst;
            201}
            ;
            202int tm_sec 代表目前秒數,正常范圍為0-59,但允許至61秒
            203int tm_min 代表目前分數,范圍0-59
            204int tm_hour 從午夜算起的時數,范圍為0-23
            205int tm_mday 目前月份的日數,范圍01-31
            206int tm_mon 代表目前月份,從一月算起,范圍從0-11
            207int tm_year 從1900 年算起至今的年數
            208int tm_wday 一星期的日數,從星期一算起,范圍為0-6
            209int tm_yday 從今年1月1日算起至今的天數,范圍為0-365
            210int tm_isdst 日光節約時間的旗標
            211此函數返回的時間日期未經時區轉換,而是UTC時間。
            212 
            213返回值  返回結構tm代表目前UTC 時間
            214 
            215范例 
            216
            217#include <time.h>
            218main(){
            219char *wday[]={"Sun","Mon","Tue","Wed","Thu","Fri","Sat"};
            220time_t timep;
            221struct tm *p;
            222time(&timep);
            223p=gmtime(&timep);
            224printf(“%d%d%d”,(1900+p->tm_year), (1+p->tm_mon),p-
            225
            226來源:(http://blog.sina.com.cn/s/blog_4d9acd450100gff1.html) - C獲取系統時間的方法(linux)_kuyouqi_新浪博客 
            227>tm_mday);
            228printf(“%s%d;%d;%d\n”, wday[p->tm_wday], p->tm_hour, p
            229
            230->tm_min, p->tm_sec);
            231}

            232 
            233執行  2000/10/28 Sat 8:15:38
            234 
            235 
            236
            237 
            238localtime(取得當地目前時間和日期) 
            239相關函數 
            240
            241time, asctime, ctime, gmtime
            242 
            243表頭文件 
            244
            245#include<time.h>
            246 
            247定義函數 
            248
            249struct tm *localtime(const time_t * timep);
            250 
            251函數說明 
            252
            253localtime()將參數timep所指的time_t結構中的信
            254
            255息轉換成真實世界所使用的時間日期表示方法,然后將結果
            256
            257由結構tm返回。結構tm的定義請參考gmtime()。此函數返回
            258
            259的時間日期已經轉換成當地時區。
            260 
            261返回值
            262
            263 返回結構tm代表目前的當地時間。
            264 
            265范例 
            266
            267#include<time.h>
            268main(){
            269char *wday[]={“Sun”,”Mon”,”Tue”,”Wed”,”Thu”,”Fri”,”Sat”};
            270time_t timep;
            271struct tm *p;
            272time(&timep);
            273p=localtime(&timep);
            274printf (“%d%d%d ”, (1900+p->tm_year),( l+p->tm_mon), p-
            275
            276>tm_mday);
            277printf(“%s%d:%d:%d\n”, wday[p->tm_wday],p->tm_hour, p
            278
            279->tm_min, p->tm_sec);
            280}

            281 
            282執行  2000/10/28 Sat 11:12:22
            283 
            284 
            285
            286 
            287mktime(將時間結構數據轉換成經過的秒數) 
            288相關函數 
            289
            290time,asctime,gmtime,localtime
            291 
            292表頭文件 
            293
            294#include<time.h>
            295 
            296定義函數 
            297
            298time_t mktime(strcut tm * timeptr);
            299 
            300函數說明 
            301
            302mktime()用來將參數timeptr所指的tm結構數據轉
            303
            304換成從公元1970年1月1日0時0分0 秒算起至今的UTC時間
            305
            306所經過的秒數。
            307 
            308返回值 
            309
            310返回經過的秒數。
            311 
            312范例 
            313
            314
            315#include<time.h>
            316main()
            317{
            318time_t timep;
            319strcut tm *p;
            320time(&timep);
            321printf(“time() : %d \n”,timep);
            322p=localtime(&timep);
            323timep = mktime(p);
            324printf(“time()->localtime()->mktime():%d\n”,timep);
            325}

            326 
            327執行  time():974943297
            328time()->localtime()->mktime():974943297
            329 
            330 
            331
            332 
            333settimeofday(設置目前時間) 
            334相關函數 
            335
            336time,ctime,ftime,gettimeofday
            337 
            338表頭文件 
            339
            340#include<sys/time.h>
            341#include<unistd.h>
            342 
            343定義函數 
            344
            345int settimeofday ( const struct tim *tv,const
            346
            347struct timezone *tz);
            348 
            349函數說明 
            350
            351settimeofday()會把目前時間設成由tv所指的結構
            352
            353信息,當地時區信息則設成tz所指的結構。詳細的說明請參
            354
            355考gettimeofday()。注意,只有root權限才能使用此函數修改
            356
            357時間。
            358 
            359返回值 
            360
            361成功則返回0,失敗返回-1,錯誤代碼存于errno。
            362 
            363錯誤代碼  EPERM 并非由root權限調用settimeofday(),
            364
            365權限不夠。
            366EINVAL 時區或某個數據是不正確的,無法正確設置時間。
            367 
            368 
            369
            370 
            371time(取得目前的時間) 
            372相關函數
            373
            374ctime,ftime,gettimeofday
            375 
            376表頭文件 
            377
            378#include<time.h>
            379 
            380定義函數 
            381
            382time_t time(time_t *t);
            383 
            384函數說明 
            385
            386此函數會返回從公元1970年1月1日的UTC時間從
            387
            3880時0分0秒算起到現在所經過的秒數。如果t 并非空指針的
            389
            390話,此函數也會將返回值存到t指針所指的內存。
            391 
            392返回值 
            393
            394成功則返回秒數,失敗則返回((time_t)-1)值,錯誤
            395
            396原因存于errno中。
            397 
            398范例 
            399
            400#include<time.h>
            401main()
            402{
            403int seconds= time((time_t*)NULL);
            404printf(“%d\n”,seconds);
            405}

            406 
            407執行  9.73E+08
            408
            409 
            410
            411本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/haoyuewuwei/archive/2009/08/18/4460914.aspx
            412

            posted on 2010-06-30 15:42 成大才子 閱讀(673) 評論(0)  編輯 收藏 引用

            <2025年6月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            293012345

            導航

            統計

            公告

            關于更多關于成大才子,請訪問http://hi.baidu.com/成大才子

            常用鏈接

            留言簿(1)

            隨筆檔案

            文章分類

            文章檔案

            鏈接

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久99国产精品二区不卡| 久久露脸国产精品| 伊人久久大香线蕉综合网站| 久久精品午夜一区二区福利| 亚洲国产精品无码久久久不卡| 久久一区二区三区免费| 国产L精品国产亚洲区久久| 久久亚洲精品视频| 久久精品成人国产午夜| 国产精品久久久久aaaa| 国产欧美久久一区二区| 国产一久久香蕉国产线看观看| 精品久久久久久综合日本| 久久久久久夜精品精品免费啦 | 亚洲国产精品久久久久久| 久久午夜羞羞影院免费观看| 久久久噜噜噜www成人网| 久久久亚洲欧洲日产国码二区 | aaa级精品久久久国产片| 精品国产福利久久久| 精品久久久无码中文字幕| 久久亚洲国产精品五月天婷| 一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区| 久久精品免费大片国产大片| 欧美日韩精品久久久免费观看| 狠狠色丁香婷婷久久综合| 亚洲AV无码久久| 精品久久久久久国产三级| 亚洲美日韩Av中文字幕无码久久久妻妇| 亚洲欧美日韩精品久久亚洲区| 亚洲精品乱码久久久久久按摩| 青青国产成人久久91网| 香蕉久久永久视频| 久久99亚洲网美利坚合众国| 亚洲国产精品久久久久婷婷老年| 亚洲国产成人久久综合区| 久久精品蜜芽亚洲国产AV| 午夜精品久久久久久| 久久综合欧美成人| 日本人妻丰满熟妇久久久久久| 久久99精品国产麻豆婷婷|