トップページ > キーワード検索 > lconv
C言語規格
C言語(その他)
プログラム
その他
lconv
機能 localeconv関数の返却値のデータを保持する構造体を表す。
定義 #include <locale.h>

struct lconv

lconv構造体は以下のメンバを含む。標準のCロケール環境では記載の値を持つ。
メンバ名意味
char *decimal_point;"."金額以外の数量の小数点文字
char *thousands_seq;""金額以外の数量の整数部グループの区切り文字
char *grouping;""金額以外の数量の各グループの桁数
char *mon_decimal_point;""金額数量の小数点文字
char *mon_thousands_sep;""金額数量の整数部グループの区切り文字
char *mon_grouping;""金額数量の各グループの桁数
char *positive_sign;""金額数量が無符号であることを示す文字
char *negative_sign;""金額数量が有符号であることを示す文字
char *currency_symbol;""通貨記号
charfrac_digits;CHAR_MAX金額数量の小数部の表示桁数
charp_cs_precedes;CHAR_MAX無符号金額数量の通貨記号の位置(1=前,0=後)
charn_cs_precedes;CHAR_MAX有符号金額数量の通貨記号の位置(1=前,0=後)
charp_sep_by_space;CHAR_MAX無符号金額数量の通貨記号、符号文字、区切り文字
charn_sep_by_space;CHAR_MAX有符号金額数量の通貨記号、符号文字、区切り文字
charp_sign_posn;CHAR_MAX無符号金額数量の符号の位置
charn_sign_posn;CHAR_MAX有符号金額数量の符号の位置
char *int_curr_symbol;""国際通貨記号
charint_frac_digits;CHAR_MAX国際様式金額数量の小数部の表示桁数
charint_p_cs_precedes;CHAR_MAX国際様式無符号金額数量の通貨記号の位置(1=前,0=後)
charint_n_cs_precedes;CHAR_MAX国際様式夕符号金額数量の通貨記号の位置(1=前,0=後)
charint_p_sep_by_space;CHAR_MAX国際様式無符号金額数量の通貨記号、符号文字、区切り文字
charint_n_sep_by_space;CHAR_MAX国際様式有符号金額数量の通貨記号、符号文字、区切り文字
charint_p_sign_posn;CHAR_MAX国際様式無符号金額数量の符号の位置
charint_n_sign_posn;CHAR_MAX国際様式有符号金策数量の符号の位置
実装例
#include <locale.h>
#include <stdio.h>

int main(void)
{
    struct lconv *plconv;    /* lconvを受け取る変数の宣言 */
    char *locale;
    
    /* Cロケール環境における通貨記号の表示 */
    locale = setlocale(LC_ALL, NULL);
    plconv = localeconv();
    printf("locale='%s'\n", locale);
    printf("currency_symbol='%s'\n\n", plconv->currency_symbol);
    
    /* 日本語環境における通貨記号の表示 */
    locale = setlocale(LC_ALL, "Japanese");
    plconv = localeconv();
    printf("locale='%s'\n", locale);
    printf("currency_symbol='%s'\n\n", plconv->currency_symbol);
    
    /* 英語環境における通貨記号の表示 */
    locale = setlocale(LC_ALL, "English");
    plconv = localeconv();
    printf("locale='%s'\n", locale);
    printf("currency_symbol='%s'\n\n", plconv->currency_symbol);

    return 0;
}
実行結果
locale='C'
currency_symbol=''

locale='Japanese_Japan.932'
currency_symbol='\'

locale='English_United States.1252'
currency_symbol='$'






inserted by FC2 system