strtok函数c解释

时间:2016-03-17 22:10:49

标签: c strtok

这是strtok函数的一个例子......我需要对这个块进行解释:

pch = strtok (NULL, " ");

尤其是#include <stdio.h> #include <string.h> int main () { char str[] ="This a sample string"; char * pch; printf ("Splitting string \"%s\" into tokens:\n",str); pch = strtok (str," "); while (pch != NULL) { printf ("%s\n",pch); pch = strtok (NULL, " "); } return 0; }

  collision col;
  if(gameObject.name=="Particle")
  Destroy(col.gameObject);

1 个答案:

答案 0 :(得分:1)

strtok()是标准C库中的函数。有一些标准C库的开源实现。例如:下面的链接是Microsoft的一个版本。

http://research.microsoft.com/en-us/um/redmond/projects/invisible/src/crt/strtok.c.htm

您可以在代码中清楚地看到:

/* Skip leading delimiters if new string. */
if ( s1 == NULL ) {
   s1 = lastToken;
   if (s1 == NULL)         /* End of story? */
   return NULL;
} else
.....

变量&#34; lastToken&#34;用于跟踪strtok()的状态。

这就是为什么第二个令牌应该将NULL传递给strtok()。