Namespaces
Variants

wcspbrk

From cppreference.net
< c ‎ | string ‎ | wide
헤더 파일에 정의됨 <wchar.h>
wchar_t * wcspbrk ( const wchar_t * dest, const wchar_t * str ) ;
(1) (C95부터)
/*QWchar_t*/ * wcspbrk ( /*QWchar_t*/ * dest, const wchar_t * str ) ;
(2) (C23부터)
1) dest 가 가리키는 와이드 문자열에서, str 이 가리키는 와이드 문자열에도 존재하는 첫 번째 문자를 찾습니다.
2) (1) 에 해당하는 타입-제네릭 함수. T 를 한정자 없는 와이드 문자 객체 타입으로 가정합니다.
  • dest const T * 타입인 경우, 반환 타입은 const wchar_t * 입니다.
  • 그렇지 않고 dest T * 타입인 경우, 반환 타입은 wchar_t * 입니다.
  • 그 외의 경우 동작은 정의되지 않습니다.
이러한 제네릭 함수들의 매크로 정의가 실제 함수에 접근하기 위해 억제된 경우(예: ( wcspbrk ) 또는 함수 포인터가 사용되는 경우), 실제 함수 선언 (1) 이 표시됩니다.

목차

매개변수

dest - 분석할 null 종료 와이드 문자열에 대한 포인터
src - 검색할 문자가 포함된 null 종료 와이드 문자열에 대한 포인터

반환값

dest 에 있는 문자 중 str 에도 존재하는 첫 번째 문자에 대한 포인터, 또는 해당 문자가 존재하지 않을 경우 널 포인터를 반환합니다.

참고 사항

이름은 "와이드 문자 문자열 포인터 분리"를 의미하며, 이는 구분자("분리") 문자 중 첫 번째 문자에 대한 포인터를 반환하기 때문입니다.

예제

#include <stdio.h>
#include <wchar.h>
int main(void)
{
    const wchar_t* str = L"Hello world, friend of mine!";
    const wchar_t* sep = L" ,!";
    unsigned int cnt = 0;
    do {
       str = wcspbrk(str, sep); // 구분자 찾기
       if (str) str += wcsspn(str, sep); // 구분자 건너뛰기
       ++cnt; // 단어 수 증가
    } while (str && *str);
    wprintf(L"There are %u words.\n", cnt);
}

출력:

There are 5 words.

참조문헌

  • C11 표준 (ISO/IEC 9899:2011):
  • 7.29.4.5.3 wcspbrk 함수 (p: 436)
  • C99 표준 (ISO/IEC 9899:1999):
  • 7.24.4.5.3 wcspbrk 함수 (p: 382)

참고 항목

(C95)
다른 와이드 문자열에 없는 와이드 문자들로만 구성된
최대 초기 세그먼트의 길이를 반환
(함수)
(C95)
와이드 문자열에서 와이드 문자의 첫 번째 발생 위치를 찾음
(함수)
한 문자열에서 다른 문자열의 문자들 중 첫 번째로 발견되는 위치를 찾음
(함수)
C++ 문서 for wcspbrk