b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

[C ++] strtok拆分字符串函数

电脑杂谈  发布时间:2020-03-30 02:12:17  来源:网络整理

c++ strchr函数_c strchr函数_strchr和strrchr函数

来自: 百度百科

原型char * strtok(char * s,const char * delim);

功能

将一个字符串解析为一组字符串. s是要分解的字符串c++ strchr函数,delim是定界符字符串.

说明

strtok()用于将字符串拆分为片段. 参数s指向要分割的字符串,参数delim是分割的字符串. 当strtok()在参数s的字符串中找到参数delim的分割字符时,它将把该字符更改为\ 0字符. 在第一次调用时,必须给strtok()提供参数s的字符串,随后的调用将参数s设置为NULL. 每次调用成功,都会返回指向该段的指针.

返回值

从s开头的分隔字符串. 没有分割字符串时返回NULL.

delim中包含的所有字符都将被滤除,滤除的位置将是一个分割节点.

c strchr函数_strchr和strrchr函数_c++ strchr函数

在C和C ++语言中使用strtok函数

strtok函数将破坏已分解字符串的完整性. 调用前后的s是不同的. 如果要保持原始字符串不变,可以结合使用strchr和sscanf.

c

#include

#include

int主(无效)

{

字符输入[16] =“ abc,d”;

char * p;

c++ strchr函数_c strchr函数_strchr和strrchr函数

/ ** / / * strtok在标记之前放置一个NULL终止符(如果找到)* /

p = strtok(输入,“,”);

如果(p)printf(“%s \ n”,p);

/ ** / / *第二次使用NULL作为第一个参数的strtok调用返回指向令牌后面字符的指针* /

p = strtok(NULL,“c++ strchr函数,”);

如果(p)printf(“%s \ n”,p);

返回0;

}

c ++

c++ strchr函数_c strchr函数_strchr和strrchr函数

#include

#include

使用命名空间标准;

int main()

{

char句子[] =“这是一个具有7个标记的句子”;

cout <<“要标记的字符串是: \ n” <<句子<<“ \ n \ n标记是: \ n \ n”;

char * tokenPtr = strtok(句子,“”);

同时(tokenPtr!= NULL)

c++ strchr函数_strchr和strrchr函数_c strchr函数

{

cout << tokenPtr <<'\ n';

tokenPtr = strtok(NULL,“”);

}

cout <<“在strtok之后,句子=” << tokenPtr << endl;

返回0;

}

对该函数的第一次调用需要两个参数. 第一次拆分的结果返回字符串中第一个','之前的字符串,这是上述程序第一次输出abc. 第二次调用函数strtok(NULL,“,”),第一个参数设置为NULL. 根据以下字符串返回结果,该字符串是第二个输出d. strtok是线程不安全的函数,因为它使用静态分配的空间来存储分段字符串的位置. 线程安全功能称为strtok_r. 使用strtok确定IP或MAC时,必须首先使用其他方法. 的数量 '. '或': ',因为使用strtok截断,例如: “ 192..168.0 ... 8 ...”此字符串,trtok仅会拦截四次,中间...不管多少,都将被视为键

其他相关信息

以下描述摘自最新的Linux内核2.6.29,它表明该功能已不再使用,并被更快的strsep()取代

/ *

* Linux / lib / string.c

*


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-157234-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...