locale.h 标头定义了特定于位置的设置,例如日期格式和货币符号.您将找到几个定义的宏以及一个重要结构 struct lconv 和下面列出的两个重要函数.
以下是标题中定义的宏,这些宏将在下面列出的两个函数中使用 :
Sr.No. | Macro&描述 |
---|---|
1 | LC_ALL 设置所有内容. |
2 | LC_COLLATE 影响strcoll和strxfrm函数. |
3 | LC_CTYPE 影响所有字符函数. |
4 | LC_MONETARY 影响localeconv函数提供的货币信息. |
5 | LC_NUMERIC 影响小数点格式和localeconv函数提供的信息. |
6 | LC_TIME 影响strftime功能. |
以下是标题locale.h中定义的函数 :
Sr.No. | 功能&描述 |
---|---|
1 | char * setlocale(int category,const char * locale) 设置或读取位置相关信息. |
2 | 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
以下是每个字段的描述 :
Sr.No. | Field&描述 |
---|---|
1 | decimal_point 用于非货币值的小数点字符. |
2 | thousands_sep 用于非货币值的千位分隔符. |
3 | grouping 表示非货币数量的每组数字的大小.每个字符代表一个整数值,指定当前组中的位数.值为0表示先前的值将用于其余组. |
4 | int_curr_symbol 这是一个使用的国际货币符号的字符串.前三个字符是ISO 4217:1987指定的字符,第四个字符是将货币符号与货币数量分开的字符. |
5 | currency_symbol 用于货币的本地符号. |
6 | mon_decimal_point 用于货币值的小数点字符. |
7 | mon_thousands_sep 用于货币价值的千位分组字符. |
8 | mon_grouping 一个字符串,其元素定义货币值中数字分组的大小.每个字符代表一个整数值,用于指定当前组中的位数.值为0表示先前的值将用于其余组. |
9 | positive_sign 使用的字符对于正货币价值. |
10 | negative_sign 用于负货币值的字符. |
11 | int_frac_digits 国际货币值小数点后显示的位数. |
12 | frac_digits 货币值小数点后显示的位数. |
13 | p_cs_precedes 如果等于到1,然后currency_symbol出现在正货币值之前.如果等于0,那么currency_symbol将出现在正货币值之后. |
14 | p_sep_by_space 如果等于1,则为currency_symbol由正货币价值的空格隔开.如果等于0,则currency_symbol和正货币值之间没有空格. |
15 | n_cs_precedes 如果等于1,则currency_symbol先于负货币值.如果等于0,则currency_symbol成功为负货币值. |
16 | n_sep_by_space 如果等于1,则currency_symbol为由负货币值的空格隔开.如果等于0,则currency_symbol和负货币值之间没有空格. |
17 | p_sign_posn 表示的位置正货币值为正值. |
18 | n_sign_posn 表示negative_sign在负货币值中的位置. |
以下值用于 p_sign_posn 和 n_sign_posn :
Value | 描述 |
---|---|
0 | 圆括号封装了值和currency_symbol. |
1 | 该符号位于值和currency_symbol之前. |
2 | 该符号接替值和currency_symbol. |
3 | 该符号紧跟在值和currency_symbol之前. |
4 | 该符号会立即成为值和currency_symbol. |