chunxiao_0220 2014-12-29 08:09 采纳率: 42.9%
浏览 1734

strspn和strbrk函数的使用问题

char *strtok_r(char *s,const char *delim,char **save_ptr)
{
char *token;

if (s==NULL) s = *save_ptr;

s += strspn(s,delim);
if(*s == '/0')
    return NULL;

token = s;
s = strpbrk(token,delim);
if (s == NULL)
    *save_ptr = strchr(token,'/0');
else{
    *s=0;
    *save_ptr = s+1;
}
return token;

}

哪位大神可以解释一下这个函数的作用是什么,我是个菜鸟,看不懂啊

  • 写回答

1条回答 默认 最新

  • oyljerry 2014-12-29 08:15
    关注
     strspn(返回字符串中第一个不在指定字符串中出现的字符下标)
    表头文件 #include<string.h>
    定义函数 size_t strspn (const char *s,const char * accept);
    函数说明 strspn()从参数s 字符串的开头计算连续的字符,而这些字符都完全是accept 所指字符串中的字符。简单的说,若strspn()返回的数值为n,则代表字符串s 开头连续有n 个字符都是属于字符串accept内的字符。
    返回值 返回字符串s开头连续包含字符串accept内的字符数目。
    
     strpbrk
    功能:
    编辑
    
    依次检验字符串s1中的字符,当被检验字符在字符串s2中也包含时,则停止检验,并返回该字符位置,空字符NULL不包括在内。
    3说明:
    编辑
    
    返回s1中第一个满足条件的字符的指针,如果没有匹配字符则返回空指针NULL。
    4用途:
    编辑
    
    在源字符串(s1)中找出最先含有搜索字符串(s2)中任一字符的位置并返回,若找不到则返回空指针。
    
    评论

报告相同问题?

悬赏问题

  • ¥20 求数据集和代码#有偿答复
  • ¥15 关于下拉菜单选项关联的问题
  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况
  • ¥15 画两个图 python或R