字符指针的引用问题
char * splitstr(char* str)
{
char * spstr;
char arr[arrlen]={'\0'};
int i =0;
int idx = 0;
char c;
for(;str != '\0' ;++i)
{
c = str[i];
if(isalnum(c))
{
arr[idx]=c;
++idx;
}
else
{
if(idx > 0)
break;
}
}
arr[idx]='\0';
str = &str[i];
printf ("split str is %s \n",str);
spstr = arr;
return spstr;
}
void splitstr2stack(tstack *sk ,char * str)
{
char * sp=0;
if( str != '\0')
{
while ((sp = splitstr(&str[0])) != '\0')
{
//push(sk,sp);
printf("output is %s , %s \n",sp,str);
}
}
}
按指针传递 应该修改原字串 但这个函数死循环了 请解答! 多谢