C和指针之字符串strtok函数

举报
chenyu 发表于 2021/07/26 23:04:21 2021/07/26
【摘要】 1、strtok函数 头文件:#include <string.h> 定义函数:char * strtok(char *s, const char *delim); 函数说明:strtok()用来将字符串分割成一个个片段。参数s 指向欲分割的字符串,参数delim 则为分割字符串,当strtok()在参数s 的字符串中发现到参数delim 的分割...

1、strtok函数

头文件:#include <string.h>
定义函数:char * strtok(char *s, const char *delim);

函数说明:strtok()用来将字符串分割成一个个片段。参数s 指向欲分割的字符串,参数delim 则为分割字符串,当strtok()在参数s 的字符串中发现到参数delim 的分割字符时则会将该字符改为\0 字符。在第一次调用时,strtok()必需给予参数s 字符串,往后的调用则将参数s 设置成NULL。每次调用成功则返回下一个分割后的字符串指针,(在delim中我们可以定义多个字符,然后切割的时候每个遇到其中的字符都会切割)

 

 


2、测试Demo

 分割字符串,只要遇到字符'*'或者字符' '都切割

   
  1. #include <stdio.h>
  2. #include <string.h>
  3. int main()
  4. {
  5. char s[] = "chen*yu chen cai*feng";
  6. char *delim = "* ";
  7. char *p = strtok(s, delim);
  8. while(p)
  9. {
  10. printf("%s\n", p);
  11. p = strtok(NULL, delim);
  12. }
  13. return 0;
  14. }

 
 
 
 
 

3、运行结果


   
  1. 1111deMacBook-Pro:dabian a1111$ gcc -g strtok.c -o strtok
  2. 1111deMacBook-Pro:dabian a1111$ ./strtok
  3. chen
  4. yu
  5. chen
  6. cai
  7. feng

 
 

文章来源: chenyu.blog.csdn.net,作者:chen.yu,版权归原作者所有,如需转载,请联系作者。

原文链接:chenyu.blog.csdn.net/article/details/78578400

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。