ReactOS  0.4.15-dev-1171-gab82533
strtok_s.c File Reference
#include <precomp.h>
#include <internal/wine/msvcrt.h>
Include dependency graph for strtok_s.c:

Go to the source code of this file.

Functions

char *CDECL strtok_s (char *str, const char *delim, char **ctx)
 

Function Documentation

◆ strtok_s()

char* CDECL strtok_s ( char str,
const char delim,
char **  ctx 
)

Definition at line 9 of file strtok_s.c.

10 {
11  if (!MSVCRT_CHECK_PMT(delim != NULL)) return NULL;
12  if (!MSVCRT_CHECK_PMT(ctx != NULL)) return NULL;
13  if (!MSVCRT_CHECK_PMT(str != NULL || *ctx != NULL)) return NULL;
14 
15  if(!str)
16  str = *ctx;
17 
18  while(*str && strchr(delim, *str))
19  str++;
20  if(!*str)
21  {
22  *ctx = str;
23  return NULL;
24  }
25 
26  *ctx = str+1;
27  while(**ctx && !strchr(delim, **ctx))
28  (*ctx)++;
29  if(**ctx)
30  *(*ctx)++ = 0;
31 
32  return str;
33 }
const WCHAR * str
smooth NULL
Definition: ftsmooth.c:416
#define MSVCRT_CHECK_PMT(x)
Definition: mbstowcs_s.c:26
char * strchr(const char *String, int ch)
Definition: utclib.c:501