Namespaces
Variants
Views
Actions

Difference between revisions of "cpp/string/multibyte/mbstate t"

From cppreference.com
< cpp‎ | string‎ | multibyte
(+mention shift state)
m (Text replace - "{{cpp|" to "{{c|")
Line 9: Line 9:
 
Possible implementation of {{tt|mbstate_t}} is a struct type holding an array representing the incomplete multibyte character, an integer counter indicating the number of bytes in the array that have been processed, and a representation of the current shift state.
 
Possible implementation of {{tt|mbstate_t}} is a struct type holding an array representing the incomplete multibyte character, an integer counter indicating the number of bytes in the array that have been processed, and a representation of the current shift state.
  
The following functions should not be called from multiple threads without synchronization with the {{cpp|std::mbstate_t*}} argument of {{tt|NULL}} due to possible data races: {{cpp|std::mbrlen}}, {{cpp|std::mbrtowc}}, {{cpp|std::mbsrtowc}}, {{cpp|std::mbtowc}}, {{cpp|std::wcrtomb}}, {{cpp|std::wcsrtomb}}, {{cpp|std::wctomb}}.  
+
The following functions should not be called from multiple threads without synchronization with the {{c|std::mbstate_t*}} argument of {{tt|NULL}} due to possible data races: {{c|std::mbrlen}}, {{c|std::mbrtowc}}, {{c|std::mbsrtowc}}, {{c|std::mbtowc}}, {{c|std::wcrtomb}}, {{c|std::wcsrtomb}}, {{c|std::wctomb}}.  
  
 
===See also===
 
===See also===

Revision as of 21:02, 19 April 2012

Template:cpp/string/multibyte/sidebar

Defined in header <cwchar>
struct mbstate_t;

The type mbstate_t is a trivial non-array type that can represent any of the conversion states that can occur in an implementation-defined set of supported multibyte character encoding rules. Zero-initialized value of mbstate_t represents the initial conversion state, although other values of mbstate_t may exist that also represent the initial conversion state.

Possible implementation of mbstate_t is a struct type holding an array representing the incomplete multibyte character, an integer counter indicating the number of bytes in the array that have been processed, and a representation of the current shift state.

The following functions should not be called from multiple threads without synchronization with the std::mbstate_t* argument of NULL due to possible data races: std::mbrlen, std::mbrtowc, std::mbsrtowc, std::mbtowc, std::wcrtomb, std::wcsrtomb, std::wctomb.

See also

Template:cpp/string/multibyte/dcl list mbsinit