zoukankan      html  css  js  c++  java
  • c语言字符串分隔

    strtok()用来将字符串分割成一个个片段。参数str指向欲分割的字符串,参数delimiters则为分割字符串,当strtok()在参数str的字符串中发现到参数delimiters的分割字符时则会将该字符改为'\0'字符。在第一次调用时,strtok()必需给予参数str字符串,往后的调用则将参数str设置成NULL。



    C/C++中的Split函数是strtok()其函数原型如下:

    char * strtok (char * str, const char * delimiters);


    函数说明

    strtok()用来将字符串分割成一个个片段。参数str指向欲分割的字符串,参数delimiters则为分割字符串,当strtok()在参数str的字符串中发现到参数delimiters的分割字符时则会将该字符改为'\0'字符。在第一次调用时,strtok()必需给予参数str字符串,往后的调用则将参数str设置成NULL。每次调用成功则返回下一个分割后的字符串指针。


    返回值

    返回下一个分割后的字符串指针,如果已无从分割则返回NULL。



    示例-1

    /* strtok example */

    #include <stdio.h>

    #include <string.h>


    int main ()

    {

    char str[] ="a,b,c,d*e";

    const char * split = ",";

    char * p;

    p = strtok (str,split);

    while(p!=NULL) {

    printf ("%s\n",p);

    p = strtok(NULL,split);

    }


    getchar();

    return 0;


    }

    本例中,实现对字符串'a,b,c,d*e"用逗号(,)来作界定符对字符串进行分割。

    输出结果将如下所示:

    a

    b

    c

    d*e


    因为delimiters支持多个分割符, 我们将本示例中的语句

    const char * split = ",";

    改成 const char * split = ",*"; //用逗号(,)和星号(*)对字符串进行分割


    这样输出结果将如下所示:

    a

    b

    c

    d

    e

  • 相关阅读:
    一些业内有名的网站收集
    WCF重载
    FCKEditor fckconfig.js配置,添加字体和大小 附:中文字体乱码问题解决
    查询第几条到第几条的数据的SQL语句
    SPOJ 9939 Eliminate the Conflict
    UVA 10534 Wavio Sequence
    HDU 3474 Necklace
    POJ 2823 Sliding Window
    UVA 437 The Tower of Babylon
    UVA 825 Walking on the Safe Side
  • 原文地址:https://www.cnblogs.com/zzxap/p/2175795.html
Copyright © 2011-2022 走看看