自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C++ strtok()實(shí)現(xiàn)功能分析

開(kāi)發(fā) 后端
我們可以使用C++ strtok()來(lái)實(shí)現(xiàn)Split函數(shù)。我們?cè)谶@篇文章中將會(huì)為大家詳細(xì)介紹有關(guān)這方面的應(yīng)用技巧,幫助大家理解。

C++編程語(yǔ)言的應(yīng)用方式非常靈活,能夠支持各種程序設(shè)計(jì)風(fēng)格。我們今天在這里為大家介紹的是利用C++ strtok()來(lái)實(shí)現(xiàn)Split函數(shù)的功能的相關(guān)方法,希望大家能從中體驗(yàn)到這一語(yǔ)言功能的強(qiáng)大。#t#

相關(guān)函數(shù):index, memchr, rindex, strpbrk, strsep, strspn, strstr

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

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

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

 

函數(shù)說(shuō)明

C++ strtok()用來(lái)將字符串分割成一個(gè)個(gè)片段。參數(shù)str指向欲分割的字符串,參數(shù)delimiters則為分割字符串,當(dāng)strtok()在參數(shù)str的字符串中發(fā)現(xiàn)到參數(shù)delimiters的分割字符時(shí)則會(huì)將該字符改為'\0'字符。在第一次調(diào)用時(shí),strtok()必需給予參數(shù)str字符串,往后的調(diào)用則將參數(shù)str設(shè)置成NULL。每次調(diào)用成功則返回下一個(gè)分割后的字符串指針。

返回值

返回下一個(gè)分割后的字符串指針,如果已無(wú)從分割則返回NULL。

示例-1

  1. /* strtok example */   
  2. #include <stdio.h>   
  3. #include <string.h>   
  4. int main ()   
  5. {   
  6. char str[] ="a,b,c,d*e";   
  7. const char * split = ",";   
  8. char * p;   
  9. p = strtok (str,split);   
  10. while(p!=NULL) {   
  11. printf ("%s\n",p);   
  12. p = strtok(NULL,split);   
  13. }   
  14. getchar();   
  15. return 0;   

本例中,實(shí)現(xiàn)對(duì)字符串'a,b,c,d*e"用逗號(hào)(,)來(lái)作界定符對(duì)字符串進(jìn)行分割。 輸出結(jié)果將如下所示:

  1. a   
  2. b   
  3. c   
  4. d*e 

 

因?yàn)閐elimiters支持多個(gè)分割符, 我們將本示例中的語(yǔ)句行

  1. const char * split = ",";  

改成

  1. const char * split = ",*"; //用逗號(hào)(,)和星號(hào)(*)對(duì)字符串進(jìn)行分割 

這樣輸出結(jié)果將如下所示:

  1. a   
  2. b   
  3. c   
  4. d   

例子2:

  1. #include <string.h>   
  2. #include <stdio.h>   
  3. #include <stdlib.h>   
  4. char string[] = "1:ip:ipport:user ";   
  5. char seps[] = ": ";   
  6. char *token;   
  7. int main( void )   
  8. {   
  9. printf( "Tokens:\n " );   
  10. // Establish string and get the first token:   
  11. token = strtok( string, seps ); // C4996   
  12. // Note: strtok is deprecated; consider using strtok_s instead   
  13. while( token != NULL )   
  14. {   
  15. // While there are tokens in "string "   
  16. printf( "%s\n ", token );   
  17. // Get next token:   
  18. token = strtok( NULL, seps ); // C4996   
  19. }   
  20. system( "pause ");   
  21. return 0;   

以上就是對(duì)C++ strtok()的相關(guān)介紹。

責(zé)任編輯:曹凱 來(lái)源: 博客園
相關(guān)推薦

2010-02-06 17:39:52

C++ strtok

2011-11-29 10:24:17

OpenStackNova

2010-12-22 17:17:54

2010-05-04 16:59:52

DNS負(fù)載均衡

2015-05-12 10:24:23

OpenStack K新版本特性Horizon

2010-02-05 18:09:28

C++ Doxygen

2015-05-12 10:47:49

openstack k開(kāi)源分析

2015-05-12 10:31:25

openstack開(kāi)源新特性分析

2012-10-19 16:18:42

Exchange

2015-05-12 10:38:56

openstack k開(kāi)源分析

2015-01-12 15:26:42

Cephweb管理云平臺(tái)

2010-02-03 15:52:55

C++ clock()

2010-01-11 11:02:59

Visual C++

2024-01-31 08:33:06

C++編程計(jì)算器

2010-09-22 15:31:05

OracleSPARCSolaris

2020-08-26 14:00:37

C++string語(yǔ)言

2010-06-12 16:08:18

UML圖書(shū)館管理系統(tǒng)

2025-03-18 09:05:28

2011-04-11 11:29:07

C++

2011-05-31 18:31:13

C++
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)