locale.h trong C (chi tiết nhất)
locale.h trong C
Header file có tên locale.h trong Thư viện C định nghĩa các thiết lập riêng về vị trí, chẳng hạn như định dạng date và các biểu tượng về currency. Bạn sẽ thấy một số macro được định nghĩa cùng với một cấu trúc quan trọng struct lconv và hai hàm quan trọng được liệt kê dưới đây.
Các macro được định nghĩa trong locale.h
Bảng dưới liệt kê một số Macro được định nghĩa trong locale.h và các macro này sẽ được sử dụng trong hai hàm được trình bày ở dưới đây:
STT | Macro & Miêu tả |
---|---|
1 | LC_ALL
Thiết lập mọi thứ |
2 | LC_COLLATE
Tác động đến các hàm strcoll và strxfrm |
3 | LC_CTYPE
Tác động đến tất cả các hàm về ký tự |
4 | LC_MONETARY
Tác động đến thông tin về tiền tệ được cung cấp bởi hàm localeconv |
5 | LC_NUMERIC
Tác động đến định dạng dấu thập phân và thông tin được cung cấp bởi hàm localeconv |
6 | LC_TIME
Tác động đến hàm strftime |
Các hàm được định nghĩa trong locale.h
Sau đây là một số hàm được định nghĩa trong locale.h của Thư viện C:
STT | Hàm & Miêu tả |
---|---|
1 |
Hàm char *setlocale(int category, const char *locale) Thiết lập hoặc đọc vị trí phụ thuộc vào thông tin đã cho |
2 |
Hàm struct lconv *localeconv(void) Thiết lập hoặc đọc vị trí phụ thuộc vào thông tin đã cho |
Cấu trúc lconv
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
Sau đây là miêu tả chi tiết các trường trên:
STT | Trường & Miêu tả |
---|---|
1 | decimal_point
Ký tự dấu chấm thập phân được sử dụng cho các giá trị không phải tiền tệ |
2 | thousands_sep
Ký tự phân tách vị trí hàng nghìn được sử dụng cho các giá trị không phải tiền tệ |
3 | grouping
Một chuỗi chỉ kích cỡ của mỗi nhóm chữ số trong các định lượng không phải tiền tệ. Mỗi ký tự biểu diễn một giá trị nguyên, mà chỉ định số chữ số trong nhóm hiện tại. Một giá trị 0 nghĩa là giá trị trước đó được sử dụng cho phần còn lại của nhóm |
4 | int_curr_symbol
Đây là một chuỗi các biểu tượng tiền tệ quốc tế. Ba ký tự đầu tiên của nó được xác định bởi ISO 4217:1987 và ký tự thứ tư là phân tách biểu tượng tiền tệ với phần định lượng tiền tệ |
5 | currency_symbol
Biểu tượng local được sử dụng cho tiền tệ |
6 | mon_decimal_point
Ký tự dấu thập phân được sử dụng cho các giá trị tiền tệ |
7 | mon_thousands_sep
Ký tự nhóm hàng nghìn được sử dụng cho các giá trị tiền tệ |
8 | mon_grouping
Một chuỗi có các phần tử định nghĩa kích cỡ của nhóm chữ số trong giá trị tiền tệ. Mỗi ký tự biểu diễn một giá trị nguyên mà chỉ định số chữ số trong nhóm hiện tại. Một giá trị 0 nghĩa là giá trị trước đó được sử dụng cho phần còn lại của nhóm |
9 | positive_sign
Ký tự được sử dụng cho các giá trị tiền tệ dương |
10 | negative_sign
Ký tự được sử dụng cho các giá trị tiền tệ âm |
11 | int_frac_digits
Số chữ số sau dấu thập phân trong các giá trị tiền tệ quốc tế |
12 | frac_digits
Số chữ số sau dấu thập phân trong các giá trị tiền tệ |
13 | p_cs_precedes
Nếu bằng 1, thì currency_symbol xuất hiện trước một giá trị tiền tệ dương. Nếu bằng 0, thì currency_symbol xuất hiện sau một giá trị tiền tệ |
14 | p_sep_by_space
Nếu bằng 1, thì phân tách currency_symbol với một giá trị tiền tệ dương bởi một khoảng trống. Nếu bằng 0, thì sẽ không phân tách currency_symbol và một giá trị tiền tệ dương |
15 | n_cs_precedes
Nếu bằng 1, thì currency_symbol ở trước một giá trị tiền tệ âm. Nếu bằng 0, thì currency_symbol theo sau một giá trị tiền tệ âm |
16 | n_sep_by_space
Nếu bằng 1, thì phân tách currency_symbol với một giá trị tiền tệ âm bởi một khoảng trống. Nếu bằng 0, thì không phân tách |
17 | p_sign_posn
Biểu diễn vị trí của positive_sign trong một giá trị tiền tệ dương |
18 | n_sign_posn
Biểu diễn vị trí của negative_sign trong một giá trị tiền tệ âm |
Các giá trị sau được sử dụng cho p_sign_posn và n_sign_posn trong Thư viện C:
Giá trị | Miêu tả |
---|---|
0 | Các dấu ngoặc đơn bao giá trị và currency_symbol |
1 | Ký hiệu đặt trước giá trị và currency_symbol |
2 | Ký hiệu theo sau giá trị và currency_symbol |
3 | Ký hiệu đặt ngay trước giá trị và currency_symbol |
4 | Ký hiệu đặt ngay sau giá trị và currency_symbol |
Các bài Thư viện C phổ biến khác tại VietJack: