日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
梓益C語言學(xué)習(xí)筆記之常用字符串操作(sscanf&strtok)

梓益C語言學(xué)習(xí)筆記之常用字符串操作(sscanf & strtok)

專注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、成都做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)海州免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了1000多家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

一、sscanf

int sscanf(const char *buf,const char *format, …);  \\從buf指定的內(nèi)存區(qū)域中讀入信息

     例:int a, b, c;

sscanf("2013:10:1", "%d:%d:%d", &a, &b, &c);

printf(“%d  %d  %d\n”,a,b,c);

sscanf()的正則表達(dá)式是從頭向后順序查找匹配字符,找不到就返回錯誤,如下面的幾個例子:

char src[] = "abcdefABCD123@456EFGghi";//一個buf只對應(yīng)一個%,%*可以用多次

sscanf(src, "%[A-Z]", buf);//buf=空,遇到A-Z以外的字符就停止,%表示選擇,%后面的表示條件,條件s表示任意字符

sscanf(src, "%[^A-Z]", buf);//buf=abcdef,^表示取反,即遇到A-Z之間的字符就結(jié)束

sscanf(src, "%[^A]", buf);//buf=abcdef,從左向右獲取除A以外的字符,直到A結(jié)果

sscanf(src, "%*[^A]", buf);//buf=空,*表示后面匹配的字符不保存([^A]本應(yīng)該是abcdef,但因加了*所以沒有了即過濾掉了)

sscanf(src, "%*[^A]%s", buf);//buf=ABCD123@456EFGghi,s表示獲取字符串,雖然前面沒有保存字符,但后面的字符可以獲得并保存

sscanf(src, "%*[^A]%[^@]", buf);//buf=ABCD123,直到遇到A并包含A結(jié)束

sscanf(src, "%*[^A]A%[^@]", buf);//buf=BCD123,直到遇到A但不包含A結(jié)束,A為定界符

二、strtok 

char *strtok(char *str, const char *delim);

#include

#include

int main()

{

char str1[]="adc*fvcv*!ebcy!hghbdfg*casdert";

char *str2="*!";

char *result[10];

int num=0,i;

result[num]=strtok(str1,str2);

while(result[num]!=NULL)

{

num++;

result[num]=strtok(NULL,str2);

}

for(i=0;i

printf("result[%d]=%s\n",i,result[i]);

return 0;

}


網(wǎng)頁標(biāo)題:梓益C語言學(xué)習(xí)筆記之常用字符串操作(sscanf&strtok)
轉(zhuǎn)載來于:http://www.dlmjj.cn/article/pdhhoj.html