用C语言截取字符串

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用C语言截取字符串相关的知识,希望对你有一定的参考价值。

字符串str有三种形式:1: "s!aaa" , 2: "s!aaa:bbb:" , 3: "s!aaa:bbb:ccc"

(字符串中"s!"是固定有的,用s1表示“aaa”,s2表示“bbb”,s3表示“ccc”,s1和s2不定长但不超过26个字符,s3是正整数最大为三位数)

写一个方法(函数),参数为str(形式不确定),分别打印出s1,s2,s3(有则打印,没有不打印)

如果允许使用库函数,那么实际这个非常简单:

#include <string.h>
#include <stdio.h>
void parse_str(char *str)

    char *s = NULL, *p;
    if(str[0] != \'s\' || str[1] != \'!\') 
        return;
    s=strdup(str+2);
    p = strtok(s, ":");
    while(p)
    
       printf("%s\\n", p);
       p = strtok(NULL, ":");
    
    free(s);
参考技术A



s1=aaa, s2=, s3=
s1=aaa, s2=bbb, s3=
s1=aaa, s2=bbb, s3=ccc
s1=, s2=bbbbcdefghijklmnopqrstuvwxyz, s3=cccdefwweqe z

参考技术B 怎么看起来像作业题?

以上是关于用C语言截取字符串的主要内容,如果未能解决你的问题,请参考以下文章

C语言截取字符串的第一个字符

c语言截取下载url中文件名称

C 语言中怎么截取字符串的一部分

c语言截取字符串中的一部分

c语言sscanf截取字符串函数获取后缀名

C语言截取字符串