char
*
split
=
",*";
//用逗号(,)和星号(*)对字符串进行分割
这样输出结果将如下所示:
a
b
c
d
e
C语言中字符切割函数split的实现#include stdio.h
#include string.h
// 将str字符以spl分割,存于dst中,并返回子字符串数量
int split(char dst[][80], char* str, const char* spl)
{
int n = 0;
char *result = NULL;
result = strtok(str, spl);
while( result != NULL )
{
strcpy(dst[n++], result);
result = strtok(NULL, spl);
}
return n;
}
int main()
{
char str[] = "what is you name?";
char dst[10][80];
int cnt = split(dst, str, " ");
for (int i = 0; icnt; i++)
puts(dst[i]);
return 0;
}
关于c语言字符串中切割函数strtok的用法strtok()函数并不像你想高级c语言切割函数的那样可以一次切割字串 。需要多次循环高级c语言切割函数,第二次时需要用 p = strtok(NULL, " ");这样高级c语言切割函数的 形式 。
void main()
{char test1[] = "Hello C World";
char *p;
p = strtok(test1, " ");
while(p)
{
printf("%s\n", p);
p = strtok(NULL, " ");
}
return 0;
}
运行结果:
Hello
C
World
C语言怎么把字符串按行分割int split(char dst[][80], char* str, const char* spl)
{
int n = 0;
char *result = NULL;
result = strtok(str, spl);
while( result != NULL )
{
strcpy(dst[n++], result);
result = strtok(NULL, spl);
}
return n;
}
int _tmain(int argc, _TCHAR* argv[])
{
char str[] = "123,456\n789,321";
char dst[10][80];
int cnt = split(dst, str, "\n");
for (int i = 0; icnt; i++)
puts(dst[i]);
return 0;
}
主要是字符串分割函数strtok的使用
【高级c语言切割函数 c语言 切片】高级c语言切割函数的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于c语言 切片、高级c语言切割函数的信息别忘了在本站进行查找喔 。
推荐阅读
- 直播运营日志总结,直播运营每日工作计划
- 如何看谁给你快手推广过,快手作品推广怎么看有没有推广成功
- postgresql恢复被删除的数据,plsql恢复某时刻删除的数据
- 直播pk投票工具,直播pk投票工具有哪些
- python昵称函数 python函数改名
- js不为空的正则表达式,正则 不为空
- jquery里面怎么使用ajax的简单介绍
- 固态硬盘缓存128m怎么,固态硬盘的缓存容量
- mysql中怎么随机查询 mysql查询结果随机排序