cab
div
eof
확장 최소화
이 문서는 기계로 번역한 것입니다. 원본 텍스트를 보려면 포인터를 문서의 문장 위로 올리십시오. 추가 정보
번역
원본
이 항목은 아직 평가되지 않았습니다.- 이 항목 평가

strtok, _strtok_l, wcstok, _wcstok_l, _mbstok, _mbstok_l

현재 로캘 또는 전달 지정 된 로케일을 사용 하 여 문자열에서 다음 토큰을 찾습니다. 보다 안전한 버전의이 함수를 사용할 수 있습니다. see strtok_s, _strtok_s_l, wcstok_s, _wcstok_s_l, _mbstok_s, _mbstok_s_l.

중요 중요

_mbstok_mbstok_l Windows 런타임에서 실행 되는 응용 프로그램에서 사용할 수 없습니다. 자세한 내용은 /zw에 지원 되는 CRT 함수.

char *strtok(
   char *strToken,
   const char *strDelimit 
);
wchar_t *wcstok(
   wchar_t *strToken,
   const wchar_t *strDelimit 
);
unsigned char *_mbstok(
   unsigned char*strToken,
   const unsigned char *strDelimit 
);
unsigned char *_mbstok(
   unsigned char*strToken,
   const unsigned char *strDelimit,
   _locale_t locale
);
strToken

토큰 또는 토큰을 포함 하는 문자열입니다.

strDelimit

구분 기호 문자 집합입니다.

locale

사용 하는 로캘.

다음 토큰에 대 한 포인터를 반환 strToken. 반환 NULL 없음 더 많은 토큰을 발견 합니다. 각 호출 수정 strToken 대체 하 여는 NULL 문자 뒤에 있는 반환 된 토큰을 발생 하는 첫 번째 구분 합니다.

strtok 함수에서 다음 토큰을 찾아 strToken. 문자 집합이 strDelimit 에서 찾을 수 있는 토큰의 구분을 지정 strToken 에 대 한 현재 호출 합니다. wcstok _mbstok 와이드 및 멀티 바이트 문자 버전의 strtok. 인수 및 반환 값을 wcstok 와이드 문자 문자열입니다. _mbstok 멀티 바이트 문자 문자열입니다. 이러한 세 가지 함수 그렇지에 동일 하 게 동작 합니다.

보안 정보 보안 정보

이러한 함수는 버퍼 오버런 문제를 가져온에 대 한 잠재적인 위협을 발생 합니다. 버퍼 오버런 문제는 자주 방법 시스템 공격에 불필요 한 권한 상승의 결과입니다. 자세한 내용은 버퍼 오버런 방지.

첫 번째 호출에서 strtok, 함수 앞의 구분 기호를 생략 하 고 첫 번째 토큰에 대 한 포인터를 반환 strToken, 토큰에 null 문자를 종료 합니다. 나머지 부분에서 더 많은 토큰을 나눌 수 있습니다 strToken 일련의 호출 하 여 strtok. 각 호출에 strtok 수정 strToken null 문자 뒤에 삽입 하 여는 token 호출에 의해 반환 합니다. 다음 토큰에서 읽을 수 strToken, 호출 strtokNULL 값은 strToken 인수. NULL strToken 인수 원인 strtok 에서 수정한 다음 토큰을 검색 하려면 strToken. strDelimit 인수 구분 기호 집합이 다를 수 있도록 값에서 다음 호출을 수행할 수 있습니다.

출력 값의 설정에 의해 영향을 받지는 LC_CTYPE 범주 설정 로케일입니다. 볼 setlocale 에 대 한 자세한 내용은. 없이 이러한 함수 버전을 _l 접미사는 현재 로케일에 대 한이 로케일 종속 동작; 사용 버전으로는 _l 접미사는 대신 전달 로캘 매개 변수를 사용 하는 경우를 제외 하 고 동일 합니다. 자세한 내용은 로캘을 참조하십시오.

참고 참고

각 함수는 문자열을 토큰으로 구문 분석 하기 위한 정적 스레드 로컬 변수를 사용 합니다. 따라서 여러 스레드가 동시에 바람직하지 않은 효과 없이 이러한 함수 호출할 수 있습니다. 그러나 단일 스레드 내에서 인터리빙 이러한 함수 중 하나를 호출 데이터가 손상 되 고 정확 하지 않은 결과가 발생할 가능성이 있습니다. 다른 문자열을 구문 분석할 때 다음 구문 분석을 시작 하기 전에 하나의 문자열 구문 분석을 완료 합니다. 또한 다른 함수가 호출 되는 위치는 루프 내에서 이러한 함수 중 하나를 호출할 때 잠재적인 위험에 대해 주의 해야 합니다. 다른 함수 끝나는 이러한 함수 중 하나를 사용 하는 경우 호출 순서는 인터리브 트리거 데이터 손상이 발생 합니다.

일반 텍스트 루틴 매핑

TCHAR입니다.H 루틴

_UNICODE 및 _Mbcs가 정의 되어 있지 않습니다

_Mbcs가 정의

_Unicode가 정의

_tcstok

strtok

_mbstok

wcstok

_tcstok

_strtok_l

_mbstok_l

_wcstok_l

루틴

필수 헤더

strtok

<string.h>

wcstok

<string.h> 또는 <wchar.h>

_mbstok , _mbstok_l

<mbstring.h>

추가 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.

// 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
   }
}
문자열 토큰 및 몇 가지 더 많은 토큰을 토큰:

해당 사항 없음. 표준 C 함수를 호출 하려면 PInvoke. 자세한 내용은 플랫폼 호출 예제.

이 정보가 도움이 되었습니까?
(1500자 남음)

커뮤니티 추가 항목

추가
Microsoft는 MSDN 웹 사이트에 대한 귀하의 의견을 이해하기 위해 온라인 설문 조사를 진행하고 있습니다. 참여하도록 선택하시면 MSDN 웹 사이트에서 나가실 때 온라인 설문 조사가 표시됩니다.

참여하시겠습니까?
© 2013 Microsoft. All rights reserved.