日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

函数 —— strtok() 例如:按照字符拆分字符串,放入新定义的数组中;按照字符拆分字符串,放入原先的数组中

發(fā)布時(shí)間:2025/10/17 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 函数 —— strtok() 例如:按照字符拆分字符串,放入新定义的数组中;按照字符拆分字符串,放入原先的数组中 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

問題描述:

原始數(shù)組:char str[80] = "This is - aa bb - cc - dd";

新定義的數(shù)組:??? ?char newstr[80]= ?{0};

分割符號(hào):?? ?const char s[2] = "-";

1、把原始數(shù)組中的字符串str,按照分割符號(hào)“-”,拆分后,再重組,放入新定義的數(shù)組newstr中:

? ? ?即:把 str , 按照“-”符號(hào)規(guī)則 分割,重組后放入newstr

#include <string.h> #include <stdio.h> int main() {char str[80] = "This is - aa bb - cc - dd";const char s[2] = "-";printf("str=%s\n",str);char *token = (strtok(str,s));char cont[80]= {0};char newstr[80]= {0};while(token){sprintf(cont,"%s",token);printf("count=%s\n",token);token = strtok(NULL,s);strcat(newstr,cont);}printf("newstr=%s\n",newstr);return 0; } 執(zhí)行結(jié)果
str=This is - aa bb - cc - dd
count=This is?
count= aa bb?
count= cc?
count= dd
newstr=This is ?aa bb ?cc ?dd

2、把原始數(shù)組中的字符串str,按照分割符號(hào)“-”,拆分后,再重組,放入原始的數(shù)組str中:

? ? ?即:把 str , 按照“-”符號(hào)規(guī)則 分割,重組后放入str

#include <string.h> #include <stdio.h> int main() {char str[80] = "This is - aa bb - cc - dd";const char s[2] = "-";char cont[80]= {0};char ss[80]= {0};char *token = (strtok(str,s));while(token){sprintf(cont,"%s",token);printf("count = %s\n",token);token = strtok(NULL,s);strcat(ss,cont);}printf("ss = %s\n",ss);printf("str = %s\n",str);memset(str,0,strlen(str));//strcat(str,ss); sprintf(str,"%s",ss); //或者printf("after strcat str = %s\n",str);return 0; }

執(zhí)行結(jié)果

count = This is?
count = ?aa bb?
count = ?cc?
count = ?dd
ss = This is ?aa bb ?cc ?dd
str = This is?
after strcat str = This is ?aa bb ?cc ?dd

3、分割字符串的兩種方式

strtok() :

分解字符串為一組字符串。s為要分解的字符串,delim為分隔符字符串。

例如:

#include<stdio.h>#include<string.h>int main(void){char buf[]="hello@boy@this@is@heima";char*temp = strtok(buf,"@");while(temp){printf("%s ",temp);temp = strtok(NULL,"@");}return0;}

執(zhí)行結(jié)果:? ? ? ?

hello

boy

this

is

heima

#include<stdio.h>#include<string.h>int main(void){char buf[]="hello@boy@this@is@heima";char*temp = strtok(buf,"@");printf("%s ",temp);while((temp = strtok(NULL,"@"))){printf("%s ",temp);}return0;}

執(zhí)行結(jié)果:

?hello

boy

this

is

heima

總結(jié)

以上是生活随笔為你收集整理的函数 —— strtok() 例如:按照字符拆分字符串,放入新定义的数组中;按照字符拆分字符串,放入原先的数组中的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。