一直以来都没怎么写过什么,因为一直觉得自己还算是菜鸟级别的,怕写错什么被大伙嘲笑
不过现在明白,不管什么能与大家分享、交流才会有更好的机会进步,也可以算是为自己的学
习历程留下点印迹:-)
今天就来说说strtok函数的使用吧,以前在论坛上经常遇到问些字符串分割的方法,其实
strtok是个很好的选择,MSDN有定义 :
char *strtok( char *strToken, const char *strDelimit );
Parameters:
strToken
String containing token(s)
strDelimit
Set of delimiter characters
参照MSDN的例子我自己写了个小函数 算是一种应用
/**********************************************************************
* 函数名称:GetSplitValue
* 功能描述:分割字符串并取值
* 输入参数:char* pchStrVal
* 输出参数:int* iSplitVal 分割后的取值数组
BYTE &byNum 取值数目
* 返 回 值:
* 其它说明:无
* 修改日期 版本号 修改人 修改内容
* ---------------------------------------------------------------------
*
************************************************************************/
BOOL GetSplitValue(char* pchStrVal, int* iSplitVal, BYTE &byNum)
{
int i=0;
char ch[] = ",- :";
char* token = NULL;
if (strlen(pchStrVal) == 1)
{
*iSplitVal = atoi(pchStrVal);
byNum = 1;
}
else if (strlen(pchStrVal) > 1)
{
token = strtok(pchStrVal, ch);
while (token != NULL)
{
*iSplitVal++ = atoi(token);
token = strtok(NULL, ch);
i++;
}
byNum = i;
}
return TRUE;
}
有时需要分割字符串 并取出相应的值 可以采用这种方法
分割符可以自定义 我这里主要是对日期时间等字符串