报错啊,求大神?“strtok”: 不能将参数 1 从“TCHAR *”转换为“char *”
while(file.ReadString(strLine))
{
TCHAR *str = strLine.GetBufferSetLength(strLine.GetLength());
char *p; if(strLine!=_T(""))
{
for (p=strtok(str,";");p!=NULL;p=strtok(NULL,";"))
{
strTemp = p;
result+=strTemp; }
row ++;
}
}
while(file.ReadString(strLine))
{
TCHAR *str = strLine.GetBufferSetLength(strLine.GetLength());
char *p; if(strLine!=_T(""))
{
for (p=strtok(str,";");p!=NULL;p=strtok(NULL,";"))
{
strTemp = p;
result+=strTemp; }
row ++;
}
}
char 是窄字节字符,一个字符占用一个字节相互转换的方法有两个函数
1.MultiByteToWideChar
2.WideCharToMultiByte具体的你上MSDN看看Demo
_tcstokstrtok 对应TCHAR 是 _tcstok
等等
{
CStringA strLineA(strLine);
char *str = strLineA.GetBufferSetLength(strLineA.GetLength());
char *p; if(strLine!=_T(""))
{
for (p=strtok(str,";");p!=NULL;p=strtok(NULL,";"))
{
strTemp = p;
result+=strTemp; }
row ++;
}
}
TCHAR 是微软定义的通用字符类型,在多字节的时候为char,unicode编码的时候为WCHAR。
_tcstok strtok _mbstok wcstok