C 语言 setlocale() 函数用于设置或查询程序的本地化环境,影响数字、货币、时间等格式。
原型
char *setlocale(int category, const char *locale);category 常用 LC_ALL(全部)、LC_NUMERIC(数字)、LC_TIME(时间);locale 为 "C"(默认)、""(系统默认)或具体地区。
参数
category- 类别(LC_ALL/LC_NUMERIC 等);locale- 地区字符串或 NULL(查询)。
示例
#include <stdio.h>
#include <locale.h>
int main() {
setlocale(LC_ALL, ""); // 使用系统默认本地化
printf("当前区域已设置\n");
return 0;
}输出:
当前区域已设置注意事项
不调用 setlocale 时默认是 "C" 区域(英文格式)。需要处理非英文日期、货币格式时先调用它。