【发布时间】:2011-02-01 13:22:41
【问题描述】:
当使用 char *str 作为第一个参数(不是分隔符字符串)时,strtok 将无法正常工作。
它与以该符号分配字符串的区域有关吗? (据我所知,这是一个只读区域)。
提前致谢
示例:
//char* str ="- This, a sample string."; // <---doesn't work
char str[] ="- This, a sample string."; // <---works
char delims[] = " ";
char * pch;
printf ("Splitting string \"%s\" into tokens:\n",str);
pch = strtok (str,delims);
while (pch != NULL)
{
printf ("%s\n",pch);
pch = strtok (NULL, delims);
}
return 0;
【问题讨论】: