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()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。