strtok函數(shù)是字符串函數(shù)庫(kù)中的一個(gè)函數(shù),函數(shù)原型如下:
創(chuàng)新互聯(lián)是一家專注于網(wǎng)站制作、成都做網(wǎng)站與策劃設(shè)計(jì),蕭山網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:蕭山等地區(qū)。蕭山做網(wǎng)站價(jià)格咨詢:028-86922220
char *strtok(char s[], const char *delim);
作用:分解字符串為一組字符串。s為要分解的字符串,delim為分隔符字符串。
例如:"hello,hi:what?is!the.matter;" 把這串字符串傳入strtok函數(shù),第二個(gè)delim寫 ",:?!.;" , 這樣就可以得到6個(gè)不同的子字符串。
我們來(lái)寫個(gè)例子驗(yàn)證一下,就寫分割時(shí)間的例子吧,獲取UTC時(shí)間
如下:
#include#include #include int main() { char *wday[] = {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"}; struct tm *p; char buf[100] = {0}; char *q ; time_t timep; time(&timep); /*獲得time_t結(jié)構(gòu)的時(shí)間,UTC時(shí)間*/ p = gmtime(&timep); /*轉(zhuǎn)換為struct tm結(jié)構(gòu)的UTC時(shí)間*/ sprintf(buf,"%d/%d/%d-%s-%d:%d:%d\n", 1900 + p->tm_year, 1 + p->tm_mon, p->tm_mday, wday[p->tm_wday], p->tm_hour, p->tm_min, p->tm_sec); printf("%s\n",buf); q = strtok(buf,"http://--::"); printf("q : %s\n",buf); while(1) { q = strtok(NULL ,"http://--::"); if(q == NULL) break ; printf("q : %s\n",q); } return 0; }
運(yùn)行結(jié)果:
2017/8/17-Thu-8:24:43
q : 2017
q : 8
q : 17
q : Thu
q : 8
q : 24
q : 43
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)創(chuàng)新互聯(lián)的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接