token=first, stat=7
token=call, stat=5
token=in, stat=5
token=has, stat=1
token=as, stat=4
token=its, stat=1
token=argument, stat=3
token=followed, stat=1
token=null, stat=5
token=pointer, stat=6
token=their, stat=1
token=separator, stat=3
token=may, stat=1
token=be, stat=1
token=different, stat=1
token=searches, stat=3
token=for, stat=4
token=that, stat=2
token=not, stat=1
token=contained, stat=2
token=current, stat=4
token=If, stat=4
token=no, stat=3
token=such, stat=4
token=found, stat=4
token=then, stat=2
token=there, stat=2
token=are, stat=1
token=shall, stat=3
token=return, stat=2
token=it, stat=2
token=start, stat=2
token=token, stat=5
token=function, stat=2
token=extends, stat=1
token=end, stat=1
token=subsequent, stat=2
token=overwritten, stat=1
token=terminates, stat=1
token=saves, stat=1
token=following, stat=1
token=next, stat=1
token=search, stat=1
token=Each, stat=1
token=value, stat=1
token=starts, stat=1
token=searching, stat=1
token=saved, stat=1
token=behaves, stat=1
token=above, stat=1
c语言 strtok请教恩, 虽然没有看过strtoktof函数c语言的实现
不过下面这个, 即时效果应该相同tof函数c语言的(每执行一次函数的效果); 测试代码是直接复制msdn里的, tof函数c语言我只写mytoken
(当然如果tof函数c语言你原意给点分的话:p)
#include stdio.h
char* MyToken( char *strToken, const char *strDelimit );
int main( void )
{
char string[] = "A string\tof ,,tokens\nand some more tokens";
char seps[] = " ,\t\n";
char *token;
printf( "Tokens:\n" );
// Establish string and get the first token:
token = MyToken( 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 = MyToken( NULL, seps ); // C4996
}
}
typedef int BOOL;
#define TRUE 1
#define FALSE 0
BOOL InSide( char c, const char *str )
{
while( 0 != *str )
if( c == *str )
return TRUE;
else
str++;
return FALSE;
}
char* MyToken( char *strToken, const char *strDelimit )
{
static char *strPoint = NULL;
char *strRet;
if( NULL != strToken )
strPoint = strToken;
if( NULL == strPoint )
return NULL;
while( 0 != *strPointInSide(*strPoint, strDelimit) )
*strPoint++ = 0;
if( 0 == *strPoint )
return strPoint = NULL;
strRet = strPoint;
while( 0 != *strPoint!InSide(*strPoint, strDelimit) )
strPoint++;
if( 0 == *strPoint )
strPoint = NULL;
else
*strPoint++ = 0;
return strRet;
}
c语言字符串代码to Earthg:
scanf不能实现含多个子字符串的字符串的读取 。
to xbvl3vosrs:
C++中也没有大写的String类,而且C++标准库STL中的小写string类中也没有Split方法 。
---------------------
C语言提供库函数strtok,可以实现字符串分割 。
给出MSDN范例代码如下,注释已经适当添加和修改:
/* STRTOK.C: In this program, a loop uses strtok
* to print all the tokens (separated by commas
* or blanks) in the string named "string".
*/
#include string.h
#include stdio.h
char string[] = "A string\tof ,,tokens\nand somemore tokens";
char seps[]= " ,\t\n";
char *token;
void main( void )
{
printf( "%s\n\nTokens:\n", string );
/* Establish string and get the first token: */
token = strtok( string, seps ); // 这里获得第一个子串
推荐阅读
- excel如何打表签贴纸,表格制作标签贴纸
- 如何利用好新媒体宣传,如何利用新媒体宣传山西本土文化
- erp系统对企业发展的意义,谈谈erp给企业带来的效益
- 红蜂ios固件如何刷新,黄蜂2固件升级失败
- 关于python是函数式语言的信息
- 移动硬盘怎么拷文件,移动硬盘怎么复制到移动硬盘
- 布衣直播软件是什么意思,布衣最新版
- 华为x30i怎么升级鸿蒙系统,x30pro升级安卓10
- linux删除程序命令 linux删除软件命令