永发信息网

C语言分割字符串

答案:4  悬赏:10  手机版
解决时间 2021-03-26 14:21
C语言分割字符串
最佳答案
使用strtok函数即可实现分割字符串。
1、strtok函数:
原型:char *strtok(char s[], const char *delim);
功能:将一个字符串分解为一组字符串,s为要分解的字符串,delim为分隔符字符串;
说明:当strtok函数在参数s的字符串中发现参数delim中包含的分割字符时,则会将该字符改为 字符。在第一次调用时,strtok()必需给予参数s字符串,往后的调用则将参数s设置成NULL。每次调用成功则返回指向被分割出片段的指针;
头文件:string.h;
返回值:从字符串s开头开始的一个个被分割的字符串。分割结束时,返回NULL。所有delim中包含的字符都会被滤掉,并将被滤掉的地方设为一处分割的节点。
2、例程:

#include
#include
int main(){
    char input[16]="abc,d,ef,g";//待分解字符串
    char* delim=",";//分隔符字符串
    char* p=strtok(input,delim);//第一次调用strtok
    while(p!=NULL){//当返回值不为NULL时,继续循环
        printf("%s
",p);//输出分解的字符串
        p=strtok(NULL,delim);//继续调用strtok,分解剩下的字符串
    }
    return 0;
}
全部回答
再以“=”为分隔符字符串进行查找不可以吗?
#include
#include
int main()
{
char buffer[]="bizbox_username=admin; bizbox_userpass=c1501f6698e058e47d3f81f723c2b9f2; bizstore_note=; bizbox_userlang=zh; csd=33; cod=29.30; business_note=null";
char str[50];
char *p1=buffer,*p2;
int i;
while((p1=strchr(p1,'='))!=NULL)
{
p2=strchr(p1,';');
for(i=0,p1++;p1!=p2;p1++)
str[i++]=*p1;
str[i]='\0';
printf("%s\n",str);
}
return 0;
}
使用strstr函数嘛(以下代码测试通过)
功能:在一个字符串中查找特定的字符串,如果查找到会返回查找到字符串的位置,失败返回NULL
分析:搜索字符串"bizbox_userlang=",成功后取出'='后和‘=’后第1个';'之间的所有字符
#include
int main(int argc, char* argv[])
{
char buf1[]="bizbox_username=admin; bizbox_userpass=c1501f6698e058e47d3f81f723c2b9f2; bizstore_note=; bizbox_userlang=zh; csd=33; cod=29.30; business_note=null";
char *buf2="bizbox_userlang=";
char *ptr;
char txt[100];
ptr=strstr(buf1,buf2); //成功返回的位置是"bizbox_userlang=zh; csd=33...."
if( ptr==NULL)
{
printf("没有找到该内容\n");
return -1;
}
ptr=ptr+strlen(buf2); //向后移动要查找字符串的长度,返回的位置是"zh; csd=33...."
int i=0;
while(*ptr!=';') //把'='和';'之间的字符记录在txt[]数组中
{
txt[i]=*ptr;
ptr+=1;
i=i+1;
}
txt[i]='\0';//字符串末尾记得补0
printf("你要查找的内容是: %s\n", txt);
system("pause");
return 0;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
用大吃一惊(斤)讲个笑话
我家水源被他养猪污染了,找环保局,环保局说
曹魏和北魏哪个强大
望岳属于什么体裁
100个球,有一个是轻的。请问如何你够简化分
我向她表白了,但她就是避而不答,不知道什么
求《妈妈的朋友》无删减,谢谢
为什么把长头发全部披在前面遮住脸人就会感到
求日语大神翻译,伏见稻荷大社十八番内容,感
你的朋友很像松下纱荣子吗?有没有照片?
做过一次抵押的房产能不能二次抵押?
谁知道帕拉骐和锐骐皮卡哪个好
谁会划拳 one two拳 跳舞拳 教下呃~
在哪里能买到四君子汤的成品
小编告诉你们win7 win8区别在哪
推荐资讯
麦芽贷是什么?
求把一个c语言文件转化成matlab语言文件??
靓甲地址在哪,我要去那里办事
这装甲车叫什么名字
七年级上册语文作业本答案,急!
比0,5大比0,6小三位小数有几个
浚县有几个乡镇 哪个乡镇有钱
欲待身安运泰时,风中灯烛不相宜,不如收拾宝堂
请大神指点,长21米宽26米他的面积有多少分地
课后网怎么查学生认真
上香时候被香灰烫到意味着什么呢??
闭上眼睛就是她的样子,我没跟他说过我爱你,
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?