namespace std {
lconv* localeconv();
}
概要
現在のロケールにおける、数値と通貨の書式設定の情報を取得する。
戻り値
現在のロケールの情報が設定されたlconv構造体へのポインタを返す。
備考
- 返されたポインタが指すオブジェクトを、プログラムから書き換えてはならない
- 返されたポインタが指すオブジェクトの内容は、後続の
setlocale()の呼び出しや、他のlocaleconv()の呼び出しによって上書きされる可能性がある - この関数の呼び出しは、
setlocale()の呼び出しとデータ競合を起こす可能性がある - C++の機能としては、同じ情報が
std::numpunctとstd::moneypunctのファセットとして提供される
例
#include <clocale>
#include <iostream>
int main()
{
std::setlocale(LC_ALL, "C");
const std::lconv* lc = std::localeconv();
std::cout << "decimal_point: " << lc->decimal_point << std::endl;
std::cout << "frac_digits: " << static_cast<int>(lc->frac_digits) << std::endl;
}
出力
decimal_point: .
frac_digits: 127
frac_digitsがCHAR_MAX(多くの処理系では127)である場合、Cロケールのようにその項目が利用できないことを表す。
バージョン
言語
- C++98