WCSTOK(3) | Manual del Programador de Linux | WCSTOK(3) |
wcstok - divide una cadena de caracteres anchos en tokens
#include <wchar.h>
wchar_t *wcstok(wchar_t *wcs, const wchar_t *delim, wchar_t **ptr);
La función wcstok() es el equivalente de caracteres anchos de la función strtok(3), con el argumento añadido para hacerlo seguro en un entorno multihilo. Se puede usar para dividir una cadena de caracteres anchos wcs en tokens, donde un token se define como una subcadena que no contenga ningún carácter ancho de delim.
La búsqueda comienza en wcs, si wcs no es NULL, o en *ptr, si wcs es NULL. Primero, cualquier carácter ancho delimitador se salta, es decir, el puntero avanza más allá de cualquier carácter ancho que aparezca en delim. Si ahora se alcanza el final de la cadena de caracteres anchos, wcstok devuelve NULL, para indicar que no se ha encontrado ningún token y guarda un valor apropiado en *ptr. Así, las sucesivas llamadas a wcstok continuarán devolviendo NULL. En otro caso, la función wcstok reconoce el comienzo de un token y devuelve un puntero a él, pero antes de hacerlo termina en cero el token reemplazando el siguiente carácter ancho que aparece en delim por un carácter (L'\0'), y actualiza *ptr para que las sucesivas llamadas continúen buscando tras el final del token reconocido.
La función wcstok() devuelve a un puntero al siguiente token, o NULL si no se encuentran más token.
Para obtener una explicación de los términos usados en esta sección, véase attributes(7).
Interfaz | Atributo | Valor |
wcstok() | Seguridad del hilo | Multi-hilo seguro |
POSIX.1-2001, POSIX.1-2008, C99.
La cadena de caracteres anchos original wcs se modifica de forma destructiva durante la operación.
El siguiente código realiza un bucle sobre los tokens contenidos en una cadena de caracteres anchos.
wchar_t *wcs = ...; wchar_t *token; wchar_t *state; for (token = wcstok(wcs, " \t\n", &state);
token != NULL;
token = wcstok(NULL, " \t\n", &state)) {
... }
Esta página es parte de la versión 5.10 del proyecto Linux man-pages. Puede encontrar una descripción del proyecto, información sobre cómo informar errores y la última versión de esta página en https://www.kernel.org/doc/man-pages/.
La traducción al español de esta página del manual fue creada por Pedro Pablo Fábrega <pfabrega@arrakis.es> y Juan Piernas <piernas@ditec.um.es>
Esta traducción es documentación libre; lea la GNU General Public License Version 3 o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.
Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a debian-l10n-spanish@lists.debian.org>..
9 Junio 2020 | GNU |