`
caoruntao
  • 浏览: 481005 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

[转]在C/C++中用strtok()实现Split函数的功能

阅读更多

http://www.cnblogs.com/buffer/archive/2009/03/12/1409765.html

表头文件:#include <string.h>

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
例子2:
#include <string.h>
#include <stdio.h>
#include <stdlib.h>

char string[] = "1:ip:ipport:user ";
char seps[] = ": ";
char *token;

int main( void )
{
printf( "Tokens:\n " );

// Establish string and get the first token:
token = strtok( string, seps ); // C4996
// Note: strtok is deprecated; consider using strtok_s instead
while( token != NULL )
{
// While there are tokens in "string "
printf( "%s\n ", token );

// Get next token:
token = strtok( NULL, seps ); // C4996
}

system( "pause ");
return 0;
}
分享到:
评论

相关推荐

    C语言/c++编写的计算器 含源码

    《C语言/C++编程实现计算器》 初学者在学习编程时,经常会遇到编写简单计算器的任务,这是一项很好的实践练习,可以加深对基本语法和逻辑控制的理解。本资源提供了一个使用C语言和C++编写的计算器的源代码,适用于...

    c/c++ 四则运算实现

    在C/C++编程中,实现四则运算是一项基础但重要的任务。这涉及到解析字符串、处理运算符优先级和括号,以及使用堆栈数据结构。本文将深入探讨如何使用C/C++来实现这一功能。 首先,我们需要理解的是,四则运算的计算...

    strtok函数C实现

    ### strtok函数C实现 #### 函数定义与作用 在C语言中,`strtok`函数是一种常用的方法,用于将一个字符串根据指定的分隔符分割成多个子串。本篇文章介绍了一个自定义版本的`strok`函数实现,并提供了一个简单的示例...

    C++常用字符串分割方法实例汇总

    本文实例汇总了C++常用字符串分割方法,分享给大家供大家参考。具体分析如下: 我们在编程的时候经常会碰到字符串分割的问题,这里总结下,也方便我们以后查询使用。...//借助strtok实现split #include &lt;

    C/C++设计模式-2

    ### C/C++设计模式-2 #### C语言面向对象编程 **面向对象编程**的核心概念包括**封装**、**继承**以及**多态**。在C语言中实现这些概念需要采取一些特殊的技巧。 ##### 封装与继承 尽管C语言本身不支持类的概念...

    strtok函数的用法 strtok函数的用法

    strtok函数的用法strtok函数的用法strtok函数的用法strtok函数的用法strtok函数的用法strtok函数的用法strtok函数的用法strtok函数的用法strtok函数的用法strtok函数的用法strtok函数的用法strtok函数的用法strtok...

    C语言strtok函数用法

    C语言中的`strtok`函数是一个非常实用的字符串处理函数,它主要用于将一个字符串按照指定的分隔符切割成多个子字符串。这个函数的核心在于它能够动态地处理字符串,逐次返回每个子串,直到没有分隔符为止。在深入...

    C/C++实现的词法分析器,适合学习编译原理的同学好好的参考一下的。

    在C/C++中实现词法分析器,我们通常会用到字符串处理函数(如strtok、strstr等)和正则表达式库(如PCRE库)。词法分析器通常采用状态机模型,通过读取源代码的一个字符(或一个字符流)并根据预定义的规则来改变...

    C/C++ 字符表

    在C/C++编程语言中,字符表是一种用于存储和处理字符数据的数据结构。它涉及到字符编码、字符类型、字符操作以及字符串处理等多个方面。字符在计算机科学中扮演着至关重要的角色,因为它们是编程语言中表示文本的...

    2017第八届蓝桥杯大赛个人赛省赛(软件类C/C++)真题(A/B/C)

    7. 字符串处理:字符串在C/C++编程中占有重要地位,题目可能涉及到字符串的拼接、查找、替换等操作,以及使用库函数(如strtok, strcmp, strcpy等)。 8. 文件操作:I/O流的使用,如文件的读写、文件指针的移动等,...

    strtok 实现 原代码 strtok 实现 原代码

    在深入探讨`strtok`函数的实现原理之前,我们首先需要了解`strtok`的基本功能。`strtok`是C语言标准库中的一个字符串处理函数,主要用于将一个字符串分割成多个子串,这些子串是由指定的分隔符来界定的。在实际应用...

    strtok的缺陷,使用strtok_s函数更新安全度

    strtok的缺陷,使用strtok_s函数更新安全度 #include "stdafx.h" #include "Windows.h" #include #include using namespace std; char string1[] = "A string\tof ,,tokens\nand some more tokens"; char ...

    C标准库源代码(学习C/C++必备)

    C标准库源代码,能提高对C的理解,不错的哦 下载文件列表 Pack : clibsource.rar C 标准库源代码\ABORT.C C标准库源代码\ABS.C C标准库源代码\ACCESS.C C标准库源代码\ADJUSTFD.C C标准库源代码\ALGRITHM C标准库源...

    C++的字符串分割函数的使用详解

    经常碰到字符串分割的问题,这里总结下,也方便我以后使用。 一、用strtok函数进行字符串分割 原型: char *strtok(char *str, const char *delim);...//借助strtok实现split #include #include int main() { char

    strtok函数的用法大全

    `strtok`函数是C语言中用于字符串处理的一个重要函数,它主要用于将一个字符串按照指定的分隔符切割成多个子串。这个函数的核心在于它能够动态地追踪字符串的分割状态,使得在后续调用中可以从上次切割的位置继续...

    使用strtok函数截取字符串得到相应的子串存入数组中

    在C/C++编程中,`strtok`函数是一种常用的字符串处理工具,用于将字符串分割成多个子串。这个函数在处理复杂格式的数据时非常有用,比如解析包含多种数据类型的字符串。在给定的场景中,我们需要从一个字符串中提取...

    c/c++函数库说明(api)html版

    所有的 C / C++ 函数 Constructors (cppstring) Constructors (cppvector) Operators (cppbitset) Operators (cppdeque) Operators (cppstack) Operators (cppstring) Operators (cppvector) abort (stdother...

    VC++_常用函数以及常用类_速查宝典.pdf

    **strcat/strchr/strcmp/strcpy/strcspn/strlen/strncat/strncmp/strncpy/strpbrk/strrchr/strspn/strstr/strtok/strxfrm/tolower/toupper** —— 这些函数允许对字符串进行连接、查找、比较、截取、替换、分割等...

    C++ strtok应用方式浅析

    在C++编程语言中,对于字符的处理,可以通过使用C++ strtok来进行具体的操作。那么正确的应用方法我们将会在这篇文章中为大家详细介绍,希望能对大家有所帮助,提高实际程序开发效率。

    C++中strtok()函数的用法介绍

    函数原型:char *strtok(char *s, const char *delim);Function:分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。Description:strtok()用来将字符串分割成一个个片段。参数s指向欲分割的字符串...

Global site tag (gtag.js) - Google Analytics