C指针操作——获取有分隔符字符串里的指定字符
获取"11,22,33;44,55,66;77,88,99"字符串中被“,”号隔开的每一个字符串
#include<string.h>
#include<stdio.h>void main()
{
char quick_dial_code[64]={0};
char vanity[32]={0};
char path[64]="11,22,33;44,55,66;77,88,99";
char number[64] = {0};
char *p = NULL;
char *q = NULL;
char *m = NULL;
char phone_list[64] = {0};
while(m != NULL)
{
strncpy(phone_list, m, 64);
p= strstr(phone_list, ",");
if(p!=NULL)
{
strncpy(quick_dial_code, phone_list, p-phone_list);
printf("quick_dial_code=%s ",quick_dial_code);
q=strstr(p+1, ",");
if(q!=NULL)
{
strncpy(vanity, p+1, q-p-1);
printf("vanity=%s ",vanity);
strncpy(number, q+1, 64);
printf("number=%s ",number);
}
else
{
printf("Can"t find , in %s ",p);
}
}
else
{
printf("Can"t find ; in phone list %s ",phone_list);
}
m = strtok(NULL, ";");
}
}
运行结果为:
quick_dial_code=11
vanity=22
number=33
quick_dial_code=44
vanity=55
number=66
quick_dial_code=77
vanity=88
number=99
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: c和c++中字符串的截取
- 下一篇: C语言实现 从一个字符串中提取一个子字符串