ctype::narrow
轉換地區設定中使用的型別 CharType 字元轉換成型別 char 對應的字元在原生字元集。
char narrow(
CharType ch,
char default = '\0'
) const;
const CharType* narrow(
const CharType* first,
const CharType* last,
char default,
char* dest
) const;
參數
ch
地區設定中使用的型別 Chartype 字元要轉換的。default
成員函式中指定的預設值設定為沒有型別 char對應字元型別 CharType 的字元。first
第一個字元的指標在要轉換的字元範圍內。last
對應至字元的指標在要轉換的字元範圍內的最後一個字元之後。dest
對型別 char 第一個字元的常數指標在儲存的已轉換的範圍的目的範圍的。
傳回值
第 10% 成員函式會對應至型別 CharTypedefault 參數字元型別 char 的原生字元,如果沒有對應未定義。
第二 + 成成員函式指標傳回至轉換的原生字元的目的範圍從型別 CharType字元。
備註
第 10% 成員函式傳回 do_narrow(ch, default)。第二 + 成成員函式傳回 do_narrow (first、 last、 default, dest)。只有基底來源字元保證唯一的原則。 CharType 在 narrow下。對於這些基本原始字元時,下列不因國別而異的控制: narrow ( 擴展 (c), 0) == c。
範例
// ctype_narrow.cpp
// compile with: /EHsc /W3
#include <locale>
#include <iostream>
using namespace std;
int main( )
{
locale loc1 ( "english" );
wchar_t *str1 = L"\x0392fhello everyone";
char str2 [16];
bool result1 = (use_facet<ctype<wchar_t> > ( loc1 ).narrow
( str1, str1 + wcslen(str1), 'X', &str2[0] ) != 0); // C4996
str2[wcslen(str1)] = '\0';
wcout << str1 << endl;
cout << &str2[0] << endl;
}
需求
標題: <locale>
命名空間: std