找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 5665|回复: 1

[函数] c++编写字符串分割函数之vector<string>的应用

[复制链接]

1214

主题

352

回帖

11

精华

管理员

菜鸟

积分
93755

贡献奖关注奖人气王精英奖乐于助人勋章

发表于 2011-6-22 22:17:02 | 显示全部楼层 |阅读模式
  1. #include<iostream>  
  2. #include<string>  
  3. #include<vector>  
  4. using namespace std;  
  5. void _strtok(char *s,char *k,vector<string>& str){  
  6.         char *ss=s;  
  7.         char *p=strstr(ss,k);  
  8.         while(p){  
  9.                 if(p-ss>0){  
  10.                         char *tt=new char[p-ss+1];  
  11.                         memset(tt,0,p-ss+1);  
  12.                         strncpy(tt,ss,p-ss);  
  13.                         str.push_back(tt);  
  14.                         delete[] tt;  
  15.                 }  
  16.                 ss+=(p-ss)+strlen(k);  
  17.                 p=strstr(ss,k);  
  18.                
  19.         }  
  20.         if(str.size()>0 && *ss!=0){  
  21.                 str.push_back(ss);  
  22.         }  
  23. }  

  24. main(){  
  25.        
  26.     vector<string> str;  
  27.     _strtok("q11sdfd11s","11",str);  
  28.     cout<<str.size();  
  29.        
  30. }
复制代码
其它例子:
  1. void main()
  2. {  
  3.     vector<string> str;  
  4.     _strtok("*.exe|*.com","|",str);  
  5.     cout<<"个数:"<<str.size()<<"\n";  
  6.        
  7.         int i;
  8.         for(i=0;i<str.size();i++) cout<<str[i]<<"\n";  
  9. }
复制代码
【VB】QQ群:1422505加的请打上VB好友
【易语言】QQ群:9531809  或 177048
【FOXPRO】QQ群:6580324  或 33659603
【C/C++/VC】QQ群:3777552
【NiceBasic】QQ群:3703755

30

主题

693

回帖

0

精华

钻石会员

积分
2815
发表于 2015-6-13 20:09:07 | 显示全部楼层
我来支持一下
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

快速回复 返回顶部 返回列表