std:: wcstok
|
헤더 파일에 정의됨
<cwchar>
|
||
|
wchar_t
*
wcstok
(
wchar_t
*
str,
const
wchar_t
*
delim,
wchar_t
**
ptr
)
;
|
||
str 이 가리키는 널 종료 와이드 문자열에서 다음 토큰을 찾습니다. 구분 문자는 delim 이 가리키는 널 종료 와이드 문자열로 식별됩니다.
-
-
만약
str
!
=
nullptr
인 경우, 이 호출은 해당 와이드 문자열에 대한 첫 번째
std::wcstok호출로 간주됩니다. 함수는 delim 에 포함되지 않는 첫 번째 와이드 문자를 검색합니다.
-
- 해당하는 와이드 문자를 찾지 못한 경우, str 내에 토큰이 전혀 존재하지 않는 것이며, 함수는 null 포인터를 반환합니다.
- 해당하는 와이드 문자를 찾은 경우, 이것이 토큰의 시작점 이 됩니다. 함수는 그 지점부터 delim 에 포함 되는 첫 번째 와이드 문자를 검색합니다.
-
-
해당하는 와이드 문자를 찾지 못한 경우,
str
에는 단 하나의 토큰만 존재하며, 이후
std::wcstok호출은 null 포인터를 반환합니다. - 해당하는 와이드 문자를 찾은 경우, 이것이 null 와이드 문자 L ' \0 ' 로 대체되고 , 파서 상태(일반적으로 다음 와이드 문자를 가리키는 포인터)가 사용자가 제공한 위치 * ptr 에 저장됩니다.
-
해당하는 와이드 문자를 찾지 못한 경우,
str
에는 단 하나의 토큰만 존재하며, 이후
- 그런 다음 함수는 토큰의 시작점을 가리키는 포인터를 반환합니다.
-
만약
str
==
nullptr
인 경우, 이 호출은
std::wcstok의 후속 호출로 간주됩니다: 함수는 동일한 * ptr 를 사용하여 이전 호출에서 중단된 지점부터 계속 진행합니다. 이 동작은 마지막으로 발견된 토큰 다음에 오는 와이드 문자를 가리키는 포인터가 str 로 전달된 경우와 동일합니다.
-
만약
str
!
=
nullptr
인 경우, 이 호출은 해당 와이드 문자열에 대한 첫 번째
목차 |
매개변수
| str | - | 토큰화할 null 종료 와이드 문자열에 대한 포인터 |
| delim | - | 구분자를 식별하는 null 종료 와이드 문자열에 대한 포인터 |
| ptr | - | wchar_t * 타입의 객체에 대한 포인터로, wcstok이 내부 상태를 저장하는 데 사용함 |
반환값
다음 토큰의 시작을 가리키는 포인터 또는 더 이상 토큰이 없을 경우 null 포인터입니다.
참고
이 함수는 파괴적입니다: 문자열
str
의 요소들에
L
'
\0
'
문자들을 기록합니다. 특히, 와이드 문자열 리터럴은
std::wcstok
의 첫 번째 인수로 사용될 수 없습니다.
std::strtok 과 달리, 이 함수는 정적 저장소를 갱신하지 않습니다: 파서 상태를 사용자가 제공한 위치에 저장합니다.
대부분의 다른 토크나이저와 달리,
std::wcstok
에서는 각 후속 토큰에 대한 구분자가 다를 수 있으며, 이전 토큰의 내용에 따라 달라질 수도 있습니다.
예제
#include <cwchar> #include <iostream> int main() { wchar_t input[100] = L"A bird came down the walk"; wchar_t* buffer; wchar_t* token = std::wcstok(input, L" ", &buffer); while (token) { std::wcout << token << '\n'; token = std::wcstok(nullptr, L" ", &buffer); } }
출력:
A bird came down the walk
참고 항목
|
바이트 문자열에서 다음 토큰을 찾음
(함수) |
|
|
C documentation
for
wcstok
|
|