Namespaces
Variants
Views
Actions

Difference between revisions of "cpp/string/wide/wcspbrk"

From cppreference.com
< cpp‎ | string‎ | wide
(paste from cpp/string/narrow/*)
m (str -> src, {{c}}, headers sorted, fmt, langlinks)
 
(16 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{cpp/title| strpbrk}}
+
{{cpp/title|wcspbrk}}
{{cpp/string/narrow/sidebar}}
+
{{cpp/string/wide/navbar}}
{{ddcl list begin}}
+
{{dcl begin}}
{{ddcl list header | cstring}}
+
{{dcl header|cwchar}}
{{ddcl list item |
+
{{dcl|
const char* strpbrk( const char* dest, const char* str );
+
const wchar_t* wcspbrk( const wchar_t* dest, const wchar_t* src );
 
}}
 
}}
{{ddcl list item |
+
{{dcl|
     char* strpbrk(      char* dest, const char* str );
+
     wchar_t* wcspbrk(      wchar_t* dest, const wchar_t* src );
 
}}
 
}}
{{ddcl list end}}
+
{{dcl end}}
  
Finds the first character in character string pointed to by {{tt|dest}}, that is also in character string pointed to by {{tt|str}}.
+
Finds the first character in wide string pointed to by {{c|dest}}, that is also in wide string pointed to by {{c|src}}.
  
 
===Parameters===
 
===Parameters===
{{param list begin}}
+
{{par begin}}
{{param list item | dest | pointer to the null-terminated character string to be analyzed}}
+
{{par|dest|pointer to the null-terminated wide string to be analyzed}}
{{param list item | src | pointer to the null-terminated character string that contains the characters to search for}}
+
{{par|src|pointer to the null-terminated wide string that contains the characters to search for}}
{{param list end}}
+
{{par end}}
  
 
===Return value===
 
===Return value===
 +
Pointer to the first character in {{c|dest}}, that is also in {{c|src}}, or a null pointer if no such character exists.
  
pointer to the first character in {{tt|dest}}, that is also in {{tt|str}}, or {{cpp|NULL}} if no such character exists.
+
===Notes===
 +
The name stands for "wide character string pointer break", because it returns a pointer to the first of the separator ("break") characters.
  
 
===Example===
 
===Example===
{{example cpp
+
{{example
|
+
|code=
  | code=
+
#include <cwchar>
  | output=
+
#include <iomanip>
 +
#include <iostream>
 +
   
 +
int main()
 +
{
 +
    const wchar_t* str = L"Hello world, friend of mine!";
 +
    const wchar_t* sep = L" ,!";
 +
   
 +
    unsigned int cnt = 0;
 +
    do
 +
    {
 +
        str = std::wcspbrk(str, sep); // find separator
 +
        std::wcout << std::quoted(str) << L'\n';
 +
        if (str)
 +
            str += std::wcsspn(str, sep); // skip separator
 +
        ++cnt; // increment word count
 +
    } while (str && *str);
 +
 +
    std::wcout << L"There are " << cnt << L" words\n";
 +
}
 +
|output=
 +
" world, friend of mine!"
 +
", friend of mine!"
 +
" of mine!"
 +
" mine!"
 +
"!"
 +
There are 5 words
 
}}
 
}}
  
 
===See also===
 
===See also===
{{dcl list begin}}
+
{{dsc begin}}
{{dcl list template | cpp/string/narrow/dcl list strcspn}}
+
{{dsc inc|cpp/string/wide/dsc wcscspn}}
{{dcl list template | cpp/string/narrow/dcl list strchr}}
+
{{dsc inc|cpp/string/wide/dsc wcschr}}
{{dcl list end}}
+
{{dsc inc|cpp/string/byte/dsc strpbrk}}
 +
{{dsc see c|c/string/wide/wcspbrk}}
 +
{{dsc end}}
 +
 
 +
{{langlinks|de|es|fr|it|ja|pt|ru|zh}}

Latest revision as of 10:01, 10 June 2023

Defined in header <cwchar>
const wchar_t* wcspbrk( const wchar_t* dest, const wchar_t* src );
      wchar_t* wcspbrk(       wchar_t* dest, const wchar_t* src );

Finds the first character in wide string pointed to by dest, that is also in wide string pointed to by src.

Contents

[edit] Parameters

dest - pointer to the null-terminated wide string to be analyzed
src - pointer to the null-terminated wide string that contains the characters to search for

[edit] Return value

Pointer to the first character in dest, that is also in src, or a null pointer if no such character exists.

[edit] Notes

The name stands for "wide character string pointer break", because it returns a pointer to the first of the separator ("break") characters.

[edit] Example

#include <cwchar>
#include <iomanip>
#include <iostream>
 
int main()
{
    const wchar_t* str = L"Hello world, friend of mine!";
    const wchar_t* sep = L" ,!";
 
    unsigned int cnt = 0;
    do
    {
        str = std::wcspbrk(str, sep); // find separator
        std::wcout << std::quoted(str) << L'\n';
        if (str)
            str += std::wcsspn(str, sep); // skip separator
        ++cnt; // increment word count
    } while (str && *str);
 
    std::wcout << L"There are " << cnt << L" words\n";
}

Output:

" world, friend of mine!"
", friend of mine!"
" of mine!"
" mine!"
"!"
There are 5 words

[edit] See also

returns the length of the maximum initial segment that consists
of only the wide not found in another wide string
(function) [edit]
finds the first occurrence of a wide character in a wide string
(function) [edit]
finds the first location of any character from a set of separators
(function) [edit]
C documentation for wcspbrk