Strtok
Hola,
Necesito trocear una cadena por blancos, puntos o comas y me resulta muy dificil hacerlo con strtok.
Podeis ayudarme?
Muchas gracias.
Susana.
Necesito trocear una cadena por blancos, puntos o comas y me resulta muy dificil hacerlo con strtok.
Podeis ayudarme?
Muchas gracias.
Susana.
Hola:
Primero hazte una copia de la cadena original, puesto que strtok() la estropea. Para la copia puedes usar strdup() (creo que es de C/unix) o bien con strcpy() (esta es standard).
Luego solo tienes que hacer un bucle asÃ
char *primerToken = strtok (copiaDeCadena," .,"); // El segundo parámetro son los separadores que quieras usar
char token = primerToken()
while (token != NULL)
{
token = strtok (NULL, " .,");
// aqui tratas token, lo guardas o lo que sea.
}
Se bueno.
Primero hazte una copia de la cadena original, puesto que strtok() la estropea. Para la copia puedes usar strdup() (creo que es de C/unix) o bien con strcpy() (esta es standard).
Luego solo tienes que hacer un bucle asÃ
char *primerToken = strtok (copiaDeCadena," .,"); // El segundo parámetro son los separadores que quieras usar
char token = primerToken()
while (token != NULL)
{
token = strtok (NULL, " .,");
// aqui tratas token, lo guardas o lo que sea.
}
Se bueno.
