C 語(yǔ)言基礎(chǔ)教程

C 語(yǔ)言流程控制

C 語(yǔ)言函數(shù)

C 語(yǔ)言數(shù)組

C 語(yǔ)言指針

C 語(yǔ)言字符串

C 語(yǔ)言結(jié)構(gòu)體

C 語(yǔ)言文件

C 其他

C 語(yǔ)言參考手冊(cè)

C 庫(kù)函數(shù) – setlocale() 使用方法及示例

C 標(biāo)準(zhǔn)庫(kù) - <locale.h>

描述

C 庫(kù)函數(shù) char *setlocale(int category, const char *locale) 設(shè)置或讀取地域化信息。

聲明

下面是 setlocale() 函數(shù)的聲明。

char *setlocale(int category, const char *locale)

參數(shù)

  • category -- 這是一個(gè)已命名的常量,指定了受區(qū)域設(shè)置影響的函數(shù)類別。

    • LC_ALL 包括下面的所有選項(xiàng)。

    • LC_COLLATE 字符串比較。參見(jiàn) strcoll()。

    • LC_CTYPE 字符分類和轉(zhuǎn)換。例如 strtoupper()。

    • LC_MONETARY 貨幣格式,針對(duì) localeconv()。

    • LC_NUMERIC 小數(shù)點(diǎn)分隔符,針對(duì) localeconv()。

    • LC_TIME 日期和時(shí)間格式,針對(duì) strftime()。

    • LC_MESSAGES 系統(tǒng)響應(yīng)。

  • locale -- 如果 locale 是 NULL 或空字符串 "",則區(qū)域名稱將根據(jù)環(huán)境變量值來(lái)設(shè)置,其名稱與上述的類別名稱相同。

返回值

如果成功調(diào)用 setlocale(),則返回一個(gè)對(duì)應(yīng)于區(qū)域設(shè)置的不透明的字符串。如果請(qǐng)求無(wú)效,則返回值是 NULL。

在線示例

下面的示例演示了 setlocale() 函數(shù)的用法。

#include <locale.h>
#include <stdio.h>
#include <time.h>
 
int main ()
{
   time_t currtime;
   struct tm *timer;
   char buffer[80];
 
   time( &currtime );
   timer = localtime( &currtime );
 
   printf("語(yǔ)言環(huán)境為: %s\n", setlocale(LC_ALL, "en_GB.UTF-8"));
   strftime(buffer,80,"%c", timer );
   printf("日期是: %s\n", buffer);
 
  
   printf("語(yǔ)言環(huán)境為: %s\n", setlocale(LC_ALL, "de_DE.UTF-8"));
   strftime(buffer,80,"%c", timer );
   printf("日期是: %s\n", buffer);
 
   return(0);
}

讓我們編譯并運(yùn)行上面的程序,這將產(chǎn)生以下結(jié)果:

語(yǔ)言環(huán)境為: en_GB
日期是: Thu 13 Aug 2011 06:39:32 MST
Locale is: de_DE
日期是: Do 13 Aug 2011 06:39:32 MST

C 標(biāo)準(zhǔn)庫(kù) - <locale.h>

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清