<locale.h>

locale.h 头文件定义了特定地域的设置,比如日期格式和货币符号。接下来我们将介绍一些宏,以及一个重要的结构 struct lconv 和两个重要的函数。

库宏

下面列出了头文件 locale.h 中定义的宏:

描述

LC_ALL

设置下面的所有选项。

LC_COLLATE

影响 strcoll 和 strxfrm 函数。

LC_CTYPE

影响所有字符函数。

LC_MONETARY

影响 localeconv 函数提供的货币信息。

LC_NUMERIC

影响 localeconv 函数提供的小数点格式化和信息。

LC_TIME

影响 strftime 函数。

库函数

char *setlocale(int category, const char *locale);//设置或读取地域化信息。
struct lconv *localeconv(void);//设置或读取地域化信息。

库结构

typedef struct {
   char *decimal_point;
   char *thousands_sep;
   char *grouping;    
   char *int_curr_symbol;
   char *currency_symbol;
   char *mon_decimal_point;
   char *mon_thousands_sep;
   char *mon_grouping;
   char *positive_sign;
   char *negative_sign;
   char int_frac_digits;
   char frac_digits;
   char p_cs_precedes;
   char p_sep_by_space;
   char n_cs_precedes;
   char n_sep_by_space;
   char p_sign_posn;
   char n_sign_posn;
} lconv

各字段的描述:

字段

描述

decimal_point

用于非货币值的小数点字符。

thousands_sep

用于非货币值的千位分隔符。

grouping

一个表示非货币量中每组数字大小的字符串。每个字符代表一个整数值,每个整数指定当前组的位数。值为 0 意味着前一个值将应用于剩余的分组。

int_curr_symbol

国际货币符号使用的字符串。前三个字符是由 ISO 4217:1987 指定的,第四个字符用于分隔货币符号和货币量。

currency_symbol

用于货币的本地符号。

mon_decimal_point

用于货币值的小数点字符。

mon_thousands_sep

用于货币值的千位分隔符。

mon_grouping

一个表示货币值中每组数字大小的字符串。每个字符代表一个整数值,每个整数指定当前组的位数。值为 0 意味着前一个值将应用于剩余的分组。

positive_sign

用于正货币值的字符。

negative_sign

用于负货币值的字符。

int_frac_digits

国际货币值中小数点后要显示的位数。

frac_digits

货币值中小数点后要显示的位数。

p_cs_precedes

如果等于 1,则 currency_symbol 出现在正货币值之前。如果等于 0,则 currency_symbol 出现在正货币值之后。

p_sep_by_space

如果等于 1,则 currency_symbol 和正货币值之间使用空格分隔。如果等于 0,则 currency_symbol 和正货币值之间不使用空格分隔。

n_cs_precedes

如果等于 1,则 currency_symbol 出现在负货币值之前。如果等于 0,则 currency_symbol 出现在负货币值之后。

n_sep_by_space

如果等于 1,则 currency_symbol 和负货币值之间使用空格分隔。如果等于 0,则 currency_symbol 和负货币值之间不使用空格分隔。

p_sign_posn

表示正货币值中正号的位置。

n_sign_posn

表示负货币值中负号的位置。

下面的值用于 p_sign_posn 和 n_sign_posn:

 

描述

0

封装值和 currency_symbol 的括号。

1

放置在值和 currency_symbol 之前的符号。

2

放置在值和 currency_symbol 之后的符号。

3

紧挨着放置在值和 currency_symbol 之前的符号。

4

紧挨着放置在值和 currency_symbol 之后的符号。

 

posted @ 2018-04-05 17:51  刘-皇叔  阅读(195)  评论(0编辑  收藏  举报