[linux] Re: is strtok niet kosher?
Daniel C. von Asmuth
asmuth op bakunin.xs4all.nl
Di Nov 8 20:31:30 CET 2005
Aldus schreef Paul Slootman op Tue, Nov 08, 2005 at 02:17:35PM +0100:
> On Tue 08 Nov 2005, Hans Paijmans wrote:
>
> > Gegeven de string "91-1;wst;ezin;C;IA;120;168;N;;IA1-0001;/+"
> > zie ik tot mijn ergernis dat het bekende loopje
> >
> > s=strtok(string,";");
> > while (s) do {printf("%s ",s);s=strtok(NULL,";");}
> >
> > de lege string tussen de twee puntkommas overslaat.
>
>
> Dat zal Linus een zorg zijn... is een glibc aangelegenheid, en die wordt
> echt niet in de kernel gebruikt.
Hmm, toch eens kijken wat die kernel dan gebruikt:
extern char * strpbrk(const char *,const char *);
extern char * strsep(char **,const char *);
extern __kernel_size_t strspn(const char *,const char *);
extern __kernel_size_t strcspn(const char *,const char *);
extern char * strncpy(char *,const char *, __kernel_size_t);
size_t strlcpy(char *, const char *, size_t);
extern char * strcat(char *, const char *);
extern char * strncat(char *, const char *, __kernel_size_t);
extern size_t strlcat(char *, const char *, __kernel_size_t);
extern int strcmp(const char *,const char *);
extern int strncmp(const char *,const char *,__kernel_size_t);
extern int strnicmp(const char *, const char *, __kernel_size_t);
extern char * strchr(const char *,int);
extern char * strnchr(const char *, size_t, int);
extern char * strrchr(const char *,int);
extern char * strstr(const char *,const char *);
extern __kernel_size_t strlen(const char *);
extern __kernel_size_t strnlen(const char *,__kernel_size_t);
extern void * memset(void *,int,__kernel_size_t);
extern void * memcpy(void *,const void *,__kernel_size_t);
extern void * memmove(void *,const void *,__kernel_size_t);
extern void * memscan(void *,int,__kernel_size_t);
extern int memcmp(const void *,const void *,__kernel_size_t);
extern void * memchr(const void *,int,__kernel_size_t);
Inderdaad, geen strtok.
Daniel
--
* New: Windows Vista *
(buy now, use in 2007)
More information about the Linux
mailing list