Namespaces
Variants
Views
Actions

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

From cppreference.com
< cpp‎ | string‎ | wide
(+see c)
m (Example: +note.)
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
{{cpp/title| wcscspn}}
 
{{cpp/title| wcscspn}}
{{cpp/string/wide/sidebar}}
+
{{cpp/string/wide/navbar}}
{{ddcl | header=cwchar |
+
{{ddcl|header=cwchar|
 
std::size_t wcscspn( const wchar_t* dest, const wchar_t* src );
 
std::size_t wcscspn( const wchar_t* dest, const wchar_t* src );
 
}}
 
}}
  
Returns the length of the maximum initial segment of the wide string pointed to by {{tt|dest}}, that consists of only the characters ''not'' found in wide string pointed to by {{tt|src}}.
+
Returns the length of the maximum initial segment of the wide string pointed to by {{c|dest}}, that consists of only the characters ''not'' found in wide string pointed to by {{c|src}}.
  
 
===Parameters===
 
===Parameters===
{{param list begin}}
+
{{par begin}}
{{param list item | dest | pointer to the null-terminated wide 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 wide 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===
The length of the maximum initial segment that contains only characters not found in the character string pointed to by {{tt|src}}
+
The length of the maximum initial segment that contains only characters not found in the character string pointed to by {{c|src}}.
  
 
===Example===
 
===Example===
 
{{example
 
{{example
|
+
|The output below was obtained using clang (libc++).
| code=
+
|code=
| output=
+
#include <cwchar>
 +
#include <iostream>
 +
#include <locale>
 +
 
 +
int main()
 +
{
 +
    wchar_t dest[] = L"白猫 黑狗 甲虫";
 +
    //                      └───┐
 +
    const wchar_t* src = L"甲虫,黑狗";
 +
 
 +
    const std::size_t len = std::wcscspn(dest, src);
 +
    dest[len] = L'\0'; // terminates the segment to print it out
 +
 
 +
    std::wcout.imbue(std::locale("en_US.utf8"));
 +
    std::wcout << L"The length of maximum initial segment is " << len << L".\n";
 +
    std::wcout << L"The segment is \"" << dest << L"\".\n";
 +
}
 +
|p=true<!--gcc may not print hieroglyphs, while clang does-->
 +
|output=
 +
The length of maximum initial segment is 3.
 +
The segment is "白猫 ".
 
}}
 
}}
  
 
===See also===
 
===See also===
{{dcl list begin}}
+
{{dsc begin}}
{{dcl list template | cpp/string/wide/dcl list wcsspn}}
+
{{dsc inc|cpp/string/wide/dsc wcsspn}}
{{dcl list template | cpp/string/wide/dcl list wcspbrk}}
+
{{dsc inc|cpp/string/wide/dsc wcspbrk}}
{{dcl list see c | c/string/wide/wcscspn}}
+
{{dsc see c|c/string/wide/wcscspn}}
{{dcl list end}}
+
{{dsc end}}
 +
 
 +
{{langlinks|de|es|fr|it|ja|pt|ru|zh}}

Latest revision as of 13:30, 23 October 2023

Defined in header <cwchar>
std::size_t wcscspn( const wchar_t* dest, const wchar_t* src );

Returns the length of the maximum initial segment of the wide string pointed to by dest, that consists of only the characters not found 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

The length of the maximum initial segment that contains only characters not found in the character string pointed to by src.

[edit] Example

The output below was obtained using clang (libc++).

#include <cwchar>
#include <iostream>
#include <locale>
 
int main()
{
    wchar_t dest[] = L"白猫 黑狗 甲虫";
    //                      └───┐
    const wchar_t* src = L"甲虫,黑狗";
 
    const std::size_t len = std::wcscspn(dest, src);
    dest[len] = L'\0'; // terminates the segment to print it out
 
    std::wcout.imbue(std::locale("en_US.utf8"));
    std::wcout << L"The length of maximum initial segment is " << len << L".\n";
    std::wcout << L"The segment is \"" << dest << L"\".\n";
}

Possible output:

The length of maximum initial segment is 3.
The segment is "白猫 ".

[edit] See also

returns the length of the maximum initial segment that consists
of only the wide characters found in another wide string
(function) [edit]
finds the first location of any wide character in one wide string, in another wide string
(function) [edit]
C documentation for wcscspn