Strtok
strtok es una función de biblioteca estándar del lenguaje de programación C para buscar tokens en una cadena. La secuencia de llamadas a funciones divide la cadena en tokens separados por caracteres delimitadores.
Prototipo de función
El prototipo descrito en el archivo de encabezado string.h:
char * strtok ( char * string , const char * delim );
- string — un puntero a la cadena que se dividirá en tokens. Después de la llamada, se cambia la cadena. Para una llamada posterior, puede pasar NULL, luego la función continuará buscando en la cadena original.
- delim es un puntero a una cadena que contiene delimitadores.
Valor devuelto
La función devuelve un puntero al primer token encontrado en la cadena. Si no se encuentran tokens, se devuelve un puntero nulo.
Uso
Conexión
C
#incluir <cadena.h>
C++
#incluir <ccadena>
Ejemplo de uso
#incluir <stdio.h>
#incluir <cadena.h>
int principal ()
{
char str [] = "Esto no es un error, es una característica". ;
printf ( "Dividir cadena \" %s \" en tokens." , str );
char * pch = strtok ( str , " ,." ); //los delimitadores (espacio, coma, punto) se especifican en el segundo parámetro printf ( " \n Tokens:" );
while ( pch != NULL ) // mientras haya tokens {
printf ( " \n %s" , pch );
pch = strtok ( NULL , " ,." );
}
devolver 0 ;
}
Conclusión:
Dividir la línea "No es un error, es una característica". a los lexemas.
fichas:
eso
no
insecto
esto es
rasgo
Seguridad
La función strtokno es reentrante . Hay dos funciones seguras para subprocesos no estándar: strtok_s(en VC ++) y strtok_r(en el estándar POSIX).
Enlaces