STRSEP(3)

NOM
strsep - Extraction de mots d'une chaîne

SYNOPSIS
#include <string.h>

char *strsep(char **stringp, const char *délim);

Exigences de macros de test de fonctionnalités pour la glibc (voir feature_test_macros(7)) :

strsep() : _BSD_SOURCE

DESCRIPTION
Si *stringp est NULL, la fonction strsep() renvoie NULL et ne fait rien d'autre. Sinon, cette fonction prend le premier élément lexical (token) dans la chaîne *stringp où les éléments sont séparés par les symboles contenus dans délim. Le mot renvoyé est terminé par un octet nul « \0 » (en écrasant le séparateur) et *stringp est mis à jour pour pointer après le mot. Dans le cas où aucun séparateur n'est trouvé, l'élément extrait est constitué de toute la chaîne *stringp, et *stringp vaut NULL.

VALEUR RENVOYÉE
La fonction strsep() renvoie un pointeur sur l'élément lexical extrait, c'est-à-dire la valeur originelle de *stringp.

CONFORMITÉ
BSD 4.4.

NOTES
La fonction strsep() a été introduite en remplacement de strtok(3), qui ne peut pas traiter les champs vides. Néanmoins, strtok(3) est conforme à C89/C99 et est donc plus portable.

BOGUES
Cette fonction souffre des mêmes problèmes que strtok(3). En particulier, elle modifie la chaîne initiale. Évitez-la.

VOIR AUSSI
index(3), memchr(3), rindex(3), strchr(3), strpbrk(3), strspn(3), strstr(3), strtok(3)

TRADUCTION

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 10 novembre 1996 et révisée le 17 juillet 2008.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 3 strsep ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.