C++ 中的setlocale() 函數設置當前程序的語言環境信息。
setlocale() 函數在<clocale> 頭文件中定義。
setlocale()原型
int setlocale(int category, const char* locale);
setlocale 函數用於為給定的 category
設置指定的係統 locale
。 setlocale 函數也可用於查詢當前的 C 語言環境。
這可以通過傳遞一個空指針來代替語言環境來完成。
參數:
category
:指定程序的哪些語言環境信息受到影響。類別的可能宏是:
宏 | 說明 |
---|---|
LC_ALL | 選擇所有 C 語言環境 |
LC_COLLATE | 選擇排序規則類別 |
LC_CTYPE | 選擇字符分類類別 |
LC_MONETARY | 選擇貨幣格式類別 |
LC_NUMERIC | 選擇數字格式類別 |
LC_TIME | 選擇時間格式類別 |
locale
:係統特定的區域設置標識符。如果它是空指針,則調用 setlocale() 會查詢當前 C 語言環境。
返回:
- 成功時,setlocale() 函數在應用更改後返回指向標識 C 語言環境的字符串的指針。
- 失敗時它返回一個空指針。
示例:setlocale() 函數如何工作?
#include <clocale>
#include <iostream>
using namespace std;
int main()
{
char *str;
setlocale(LC_ALL, "en_US.utf8");
str = setlocale(LC_ALL, NULL);
cout << "Current locale: " << str << endl;
cout << "Changing locale " << endl;
setlocale(LC_ALL, "en_GB.utf8");
str = setlocale(LC_ALL, NULL);
wcout << "Current locale: " << str << endl;
return 0;
}
運行程序時,輸出將是:
Current locale: en_US.utf8 Changing locale Current locale: en_GB.utf8
相關用法
- C++ set rbegin()用法及代碼示例
- C++ set upper_bound()用法及代碼示例
- C++ set crbegin用法及代碼示例
- C++ set size用法及代碼示例
- C++ set emplace用法及代碼示例
- C++ set swap()用法及代碼示例
- C++ set::rbegin()、set::rend()用法及代碼示例
- C++ set size()用法及代碼示例
- C++ set lower_bound()用法及代碼示例
- C++ set begin用法及代碼示例
- C++ set::begin()、set::end()用法及代碼示例
- C++ set end用法及代碼示例
- C++ set erase()用法及代碼示例
- C++ set find()用法及代碼示例
- C++ set end()用法及代碼示例
- C++ set cbegin()用法及代碼示例
- C++ set key_comp()用法及代碼示例
- C++ set equal_range()用法及代碼示例
- C++ set emplace_hint用法及代碼示例
- C++ set key_comp用法及代碼示例
注:本文由純淨天空篩選整理自 C++ setlocale()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。