strtok 함수는 strToken에서 다음 토큰을 찾습니다. strDelimit의 문자 집합은 현재 호출을 통해 strToken에서 찾을 토큰에 사용 가능한 구분 기호를 지정합니다.
wcstok 및 _mbstok는 strtok의 와이드 문자 및 멀티바이트 문자 버전입니다. 인수 및 반환 값 wcstok 은 와이드 문자열입니다. 다단계 및 반환 값 _mbstok 은 멀티바이트 문자열입니다. 그렇지 않으면 이들 세 함수는 동일하게 작동합니다.
두 인수 버전은 wcstok 표준이 아닙니다. 해당 버전을 사용해야 하는 경우 앞에서 정의 _CRT_NON_CONFORMING_WCSTOK#include <wchar.h> 해야 합니다(또는 #include <string.h>).
매개 변수
strToken :토큰을 하나 이상 포함하는 문자열입니다.
strDelimit :구분 기호 문자 집합입니다.
locale :사용할 로캘입니다.
context :파서가 다음에 호출 wcstok할 때 중단된 위치에서 계속 진행할 수 있도록 파서의 내부 상태를 저장하는 데 사용되는 메모리를 가리킵니다.
반환 값 : strToken에서 발견된 다음 토큰에 대한 포인터를 반환합니다. 더 이상 토큰을 찾을 수 없으면 함수가 반환 NULL 됩니다. 각 호출은 strToken 반환된 토큰 이후에 발생하는 첫 번째 구분 기호에 대해 null 문자를 대체하여 수정합니다.
// crt_strtok.c
// compile with: /W3
// In this program, a loop uses strtok
// to print all the tokens (separated by commas
// or blanks) in the string named "string".
//
#include <string.h>
#include <stdio.h>
char string[] = "A string\tof ,,tokens\nand some more tokens";
char seps[] = " ,\t\n";
char *token;
int main( void )
{
printf( "Tokens:\n" );
// Establish string and get the first token:
token = strtok( string, seps ); // C4996
// Note: strtok is deprecated; consider using strtok_s instead
while( token != NULL )
{
// While there are tokens in "string"
printf( " %s\n", token );
// Get next token:
token = strtok( NULL, seps ); // C4996
}
}
Tokens:
A
string
of
tokens
and
some
more
tokens