OLD | NEW |
1 #ifndef»_LOCALE_H | 1 #ifndef _LOCALE_H |
2 #define»_LOCALE_H | 2 #define _LOCALE_H |
3 | 3 |
4 #ifdef __cplusplus | 4 #ifdef __cplusplus |
5 extern "C" { | 5 extern "C" { |
6 #endif | 6 #endif |
7 | 7 |
8 #include <features.h> | 8 #include <features.h> |
9 | 9 |
10 #ifdef __cplusplus | 10 #ifdef __cplusplus |
11 #define NULL 0L | 11 #define NULL 0L |
12 #else | 12 #else |
13 #define NULL ((void*)0) | 13 #define NULL ((void*)0) |
14 #endif | 14 #endif |
15 | 15 |
16 #define LC_CTYPE 0 | 16 #define LC_CTYPE 0 |
17 #define LC_NUMERIC 1 | 17 #define LC_NUMERIC 1 |
18 #define LC_TIME 2 | 18 #define LC_TIME 2 |
19 #define LC_COLLATE 3 | 19 #define LC_COLLATE 3 |
20 #define LC_MONETARY 4 | 20 #define LC_MONETARY 4 |
21 #define LC_MESSAGES 5 | 21 #define LC_MESSAGES 5 |
22 #define LC_ALL 6 | 22 #define LC_ALL 6 |
23 | 23 |
24 struct lconv { | 24 struct lconv { |
25 » char *decimal_point; | 25 char* decimal_point; |
26 » char *thousands_sep; | 26 char* thousands_sep; |
27 » char *grouping; | 27 char* grouping; |
28 | 28 |
29 » char *int_curr_symbol; | 29 char* int_curr_symbol; |
30 » char *currency_symbol; | 30 char* currency_symbol; |
31 » char *mon_decimal_point; | 31 char* mon_decimal_point; |
32 » char *mon_thousands_sep; | 32 char* mon_thousands_sep; |
33 » char *mon_grouping; | 33 char* mon_grouping; |
34 » char *positive_sign; | 34 char* positive_sign; |
35 » char *negative_sign; | 35 char* negative_sign; |
36 » char int_frac_digits; | 36 char int_frac_digits; |
37 » char frac_digits; | 37 char frac_digits; |
38 » char p_cs_precedes; | 38 char p_cs_precedes; |
39 » char p_sep_by_space; | 39 char p_sep_by_space; |
40 » char n_cs_precedes; | 40 char n_cs_precedes; |
41 » char n_sep_by_space; | 41 char n_sep_by_space; |
42 » char p_sign_posn; | 42 char p_sign_posn; |
43 » char n_sign_posn; | 43 char n_sign_posn; |
44 » char int_p_cs_precedes; | 44 char int_p_cs_precedes; |
45 » char int_p_sep_by_space; | 45 char int_p_sep_by_space; |
46 » char int_n_cs_precedes; | 46 char int_n_cs_precedes; |
47 » char int_n_sep_by_space; | 47 char int_n_sep_by_space; |
48 » char int_p_sign_posn; | 48 char int_p_sign_posn; |
49 » char int_n_sign_posn; | 49 char int_n_sign_posn; |
50 }; | 50 }; |
51 | 51 |
| 52 char* setlocale(int, const char*); |
| 53 struct lconv* localeconv(void); |
52 | 54 |
53 char *setlocale (int, const char *); | 55 #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) || \ |
54 struct lconv *localeconv(void); | 56 defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) |
55 | |
56 | |
57 #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ | |
58 || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) | |
59 | 57 |
60 #define __NEED_locale_t | 58 #define __NEED_locale_t |
61 | 59 |
62 #include <bits/alltypes.h> | 60 #include <bits/alltypes.h> |
63 | 61 |
64 #define LC_GLOBAL_LOCALE ((locale_t)-1) | 62 #define LC_GLOBAL_LOCALE ((locale_t)-1) |
65 | 63 |
66 #define LC_CTYPE_MASK (1<<LC_CTYPE) | 64 #define LC_CTYPE_MASK (1 << LC_CTYPE) |
67 #define LC_NUMERIC_MASK (1<<LC_NUMERIC) | 65 #define LC_NUMERIC_MASK (1 << LC_NUMERIC) |
68 #define LC_TIME_MASK (1<<LC_TIME) | 66 #define LC_TIME_MASK (1 << LC_TIME) |
69 #define LC_COLLATE_MASK (1<<LC_COLLATE) | 67 #define LC_COLLATE_MASK (1 << LC_COLLATE) |
70 #define LC_MONETARY_MASK (1<<LC_MONETARY) | 68 #define LC_MONETARY_MASK (1 << LC_MONETARY) |
71 #define LC_MESSAGES_MASK (1<<LC_MESSAGES) | 69 #define LC_MESSAGES_MASK (1 << LC_MESSAGES) |
72 #define LC_ALL_MASK 0x7fffffff | 70 #define LC_ALL_MASK 0x7fffffff |
73 | 71 |
74 locale_t duplocale(locale_t); | 72 locale_t duplocale(locale_t); |
75 void freelocale(locale_t); | 73 void freelocale(locale_t); |
76 locale_t newlocale(int, const char *, locale_t); | 74 locale_t newlocale(int, const char*, locale_t); |
77 locale_t uselocale(locale_t); | 75 locale_t uselocale(locale_t); |
78 | 76 |
79 #endif | 77 #endif |
80 | 78 |
81 | |
82 #ifdef __cplusplus | 79 #ifdef __cplusplus |
83 } | 80 } |
84 #endif | 81 #endif |
85 | 82 |
86 #endif | 83 #endif |
OLD | NEW |