std::wctob
From cppreference.com
                    
                                        
                    
                    
                                                            
                    |   Defined in header <cwchar>
   | 
||
|   int wctob( std::wint_t c );  | 
||
Narrows a wide character c if its multibyte character equivalent in the initial shift state is a single byte.
This is typically possible for the characters from the ASCII character set, since most multibyte encodings (such as UTF-8) use single bytes to encode those characters.
Contents | 
[edit] Parameters
| c | - | wide character to narrow | 
[edit] Return value
EOF if c does not represent a multibyte character with length 1 in initial shift state.
Otherwise, the single-byte representation of c as unsigned char converted to int
[edit] Example
#include <cwchar> #include <cstdio> #include <clocale> int main() { std::setlocale(LC_ALL, ""); std::printf("narrow: %c\nnarrowed from wide: %c\n", 'a', std::wctob(L'a')); }
Output:
narrow: a narrowed from wide: a
[edit] See also
|    widens a single-byte narrow character to wide character, if possible  (function)  | |
|    [virtual]  | 
  converts a character or characters from charT to char   (virtual protected member function of std::ctype)  | 
|   C documentation for wctob 
 | |