setlocale函数

位于C标准库include <locale.h>中。

函数原型:char* setlocale (int category, const char* locale);

用于设置或获取运行时语言环境。

 

第一个参数为设定地域的影响范围,需使用<locale.h> 中定义的宏,如下图

第二个参数可以设置地域名称

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
p = setlocale(LC_ALL, "chs"); //为设置地域为中文地区
p = setlocale(LC_ALL, "en-US"); //为设置地域为英文地区
p = setlocale(LC_ALL, "chs"); //为设置地域为中文地区 p = setlocale(LC_ALL, "en-US"); //为设置地域为英文地区
p = setlocale(LC_ALL, "chs");    //为设置地域为中文地区
p = setlocale(LC_ALL, "en-US");  //为设置地域为英文地区

当第二个参数为NULL时,返回当前系统设置地区

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
#include <stdio.h>
#include <locale.h>
int main(int argc, char* argv[])
{
char *p = 0;
p = setlocale(LC_ALL, NULL);
printf("%s\n", p);
return 0;
}
#include <stdio.h> #include <locale.h> int main(int argc, char* argv[]) { char *p = 0; p = setlocale(LC_ALL, NULL); printf("%s\n", p); return 0; }
#include <stdio.h>
#include <locale.h>

int main(int argc, char* argv[])
{
 char *p = 0;
 p = setlocale(LC_ALL, NULL);
 printf("%s\n", p);
 
 return 0;
}