C++快速分割字符串

C++中有一个函数可以快速分割字符串,它也是C库中的函数——strtok,用它分割字符串与C#、Delphi分割字符串一样方便了。这里引用一段strtok用法:
The strtok() function returns a pointer to the next "token" in str1, where str2 contains the delimiters that determine the token. strtok() returns NULL if no token is found. In order to convert a string to tokens, the first call to strtok() should have str1 point to the string to be tokenized. All calls after this should have str1 beNULL.

For example:
   char str[] = "now # is the time for all # good men to come to the # aid of their country";
   char delims[] = "#";
   char *result = NULL;
   result = strtok( str, delims );
   while( result != NULL ) {
       printf( "result is \"%s\"\n", result );
       result = strtok( NULL, delims );
   }            

The above code will display the following output:

   result is "now "
   result is " is the time for all "
   result is " good men to come to the "
   result is " aid of their country"
分割的字符串可以是多个如:
char str[] = "The above#code|will display,the following output"
char delims[] = ",|# " ;
输出为:
The 
above
code
will 
display
the
following
output
注:慎用“\"做分割符,这个不用多解释吧!

你可能感兴趣的:(C++)