在Keil uVision5环境下strtok()函数的返回值为什么不能赋值到指针变量
voidsplit(char**arr,char*str,constchar*del)//字符分割函数的简单定义和实现{char*s=NULL;s=strtok(str,...
void split( char **arr, char *str, const char *del)//字符分割函数的简单定义和实现
{
char *s =NULL;
s=strtok(str,del);
while(s != NULL)
{
*arr++ = s;
s = strtok(NULL,del);
}
}
一个字符串分割函数,看以上代码,在C语言环境下编译没问题,在Keil uVision5环境下编译,s=strtok(str,del);语句报错误如下:
..\HARDWARE\STMFLASH\stmflash.c(123): error: #513: a value of type "int" cannot be assigned to an entity of type "char *"。
s是指针变量,strtok()函数的返回值是指针,为什么出现以上错误?请高手指点!
我已经解决了 展开
{
char *s =NULL;
s=strtok(str,del);
while(s != NULL)
{
*arr++ = s;
s = strtok(NULL,del);
}
}
一个字符串分割函数,看以上代码,在C语言环境下编译没问题,在Keil uVision5环境下编译,s=strtok(str,del);语句报错误如下:
..\HARDWARE\STMFLASH\stmflash.c(123): error: #513: a value of type "int" cannot be assigned to an entity of type "char *"。
s是指针变量,strtok()函数的返回值是指针,为什么出现以上错误?请高手指点!
我已经解决了 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询