超复杂串求解。。。。
原串如下
A:B:C|D:E:F|G:H:I|J:K:L|
现在需把每个字母都取出来赋给string str1,str2,str3....
[解决办法]
没看出来有什么复杂的:
string s = "A:B:C|D:E:F|G:H:I|J:K:L| ";
...
str1 = s.sub(0, 1);
str2 = s.sub(2, 1);
str3 = s.sub(4, 1);
str4 = s.sub(6, 1);
...
[解决办法]
#include <string.h>
#include <stdio.h>
char string[] = "A:B:C|D:E:F|G:H:I|J:K:L| ";
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
}
}
[解决办法]
#include <iostream>
#include <string>
#include <vector>
using namespace std;
string a( "A:B:C|D:E:F|G:H:I|J:K:L| ");
vector <char> v;
string::iterator siter = a.begin();
int main(int argc, char *argv[])
{
while(siter!=a.end())
{
char b = *siter++;
if(isalpha(b))
v.push_back(b);
}
vector <char> ::iterator beg = v.begin();
for(;beg!=v.end();++beg)
{
cout < <*beg < <endl;
}
system( "PAUSE ");
return 0;
}
超复杂串求解。解决方法
超复杂串求解。。。。原串如下A:B:C|D:E:F|G:H:I|J:K:L|现在需把每个字母都取出来赋给stringstr1,str2,str3...
