strtok() se usa para dividir en elementos una cadena. Es decir, que si tiene una cadena como "Esta es una cadena de ejemplo" podría dividirla en palabras individuales utilizando el espacio como divisor.
Nótese que sólo la primera llamada a strtok utiliza el argumento cadena. Cada llamada subsiguiente necesita sólo el divisor a utilizar, puesto que ella guarda la posición actual en la cadena. Para comenzar de nuevo o para dividir otra cadena, simplemente llame a strtok con el argumento de cadena y se inicializará. Nótese que puede poner divisores múltiples como parámetro. La cadena será dividida cuando alguno de los caracteres del argumento sea hallado.
Además tenga cuidado si sus divisores valen "0", pues evalúa como FALSE en las expresiones condicionales.