C 표준 라이브러리 - <locale.h>
Introduction
locale.h 헤더 파일은 날짜 형식, 통화 기호 등 로캘별 설정을 정의합니다. 다음으로 몇 가지 매크로와 중요한 구조인 struct lconv 및 두 가지 중요한 기능을 소개하겠습니다.
라이브러리 매크로
헤더 파일 locale.h에 정의된 매크로는 다음 두 가지 기능에 사용됩니다.
일련번호 | 매크로 및 설명 |
---|---|
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에 정의된 함수는 다음과 같습니다.
일련 번호 | 함수 및 설명 |
---|---|
1 | char *setlocale(int 카테고리, 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
각 필드에 대한 설명은 다음과 같습니다.
Serial Number | Field & Description |
---|---|
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 | plus_sign 양수 금전적 가치에 사용되는 문자입니다. |
10 | negative_sign 음수 금액에 사용되는 문자입니다. |
11 | int_frac_digits 국제 통화 값에서 소수점 이하 표시할 자릿수입니다. |
12 | frac_digits 통화 값에서 소수점 이하 표시할 자릿수입니다. |
13 | p_cs_precedes 1과 같으면 통화_기호가 양수 통화 값 앞에 나타납니다. 0과 같으면 통화_기호는 양수 통화 값 뒤에 표시됩니다. |
14 | p_sep_by_space 1과 같으면 통화_기호와 양수 통화 값은 공백으로 구분됩니다. 0과 같으면 통화_기호와 양수 통화 값 사이에 공백이 사용되지 않습니다. |
15 | n_cs_precedes 1과 같을 경우,currency_symbol은 음수 통화 값 앞에 표시됩니다. 0과 같을 경우,currency_symbol은 음수 통화 값 뒤에 표시됩니다. |
16 | n_sep_by_space 1과 같으면 통화_기호와 음수 통화 값은 공백으로 구분됩니다. 0과 같으면 통화_기호와 음수 통화 값 사이에 공백이 사용되지 않습니다. |
17 | p_sign_posn 은 양수 화폐 가치에서 양수 부호의 위치를 나타냅니다. |
18 | n_sign_posn 은 음수 화폐 가치에서 음수 부호의 위치를 나타냅니다. |
다음 값은 p_sign_posn 및 n_sign_posn에 사용됩니다.
값 | 설명 |
---|---|
0 | 괄호는 값과 통화_기호를 캡슐화합니다. |
1 | 값과 통화_기호 앞에 기호가 표시됩니다. |
2 | 값과 통화_기호 뒤에 기호가 표시됩니다. |
3 | 값과 통화_기호 바로 앞에 위치하는 기호입니다. |
4 | 값과 통화_기호 바로 뒤에 있는 기호입니다. |