「cpp/locale/setlocale」の版間の差分
提供: cppreference.com
細 (Use {{lc}}. Update links. Various fixes.) |
細 (Fix some translations) |
||
55行: | 55行: | ||
}} | }} | ||
− | === | + | ====== |
{{dsc begin}} | {{dsc begin}} | ||
{{dsc inc | cpp/locale/dsc LC_categories}} | {{dsc inc | cpp/locale/dsc LC_categories}} |
2015年11月30日 (月) 06:32時点における版
![]() |
このページは、Google 翻訳を使って英語版から機械翻訳されました。
翻訳には誤りや奇妙な言い回しがあるかもしれません。文章の上にポインタをおくと、元の文章が見れます。誤りを修正して翻訳を改善する手助けをしてください。翻訳についての説明は、ここをクリックしてください。 |
ヘッダ <clocale> で定義
|
||
char* setlocale( int category, const char* locale); |
||
setlocale
関数は、新しいCロケールとして指定されているシステムのロケールまたはその一部をインストールします。修正は引き続き有効であるとsetlocale
への次のコールまで、ロケールに依存するすべてのCライブラリ関数の実行に影響を与えます。 locale
がNULLポインターである場合、setlocale
は、それを変更することなく、現在のCロケールを照会.Original:
The
setlocale
function installs the specified system locale or its portion as the new C locale. The modifications remain in effect and influences the execution of all locale-sensitive C library functions until the next call to setlocale
. If locale
is a null pointer, setlocale
queries the current C locale without modifying it.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
目次 |
パラメータ
category | - | マクロの一つ。 nullの可能性があります. Original: locale category identifier, one of the LC_xxx Original: LC_xxx The text has been machine-translated via [http://translate.google.com Google Translate]. You can help to correct and verify the translation. Click [http://en.cppreference.com/w/Cppreference:MachineTranslations here] for instructions. The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
locale | - | システム固有のロケール識別子。最小限のロケール用のユーザの優先ロケールまたは""ため"C"することができます
Original: system-specific locale identifier. Can be "" for the user-preferred locale or "C" for the minimal locale The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
値を返します
変更を適用した後のCロケールを識別狭いNULLで終わる文字列があれば、失敗した場合はNULLポインタへのポインタ..
Original:
Pointer to a narrow null-terminated string identifying the C locale after applying the changes, if any, or null pointer on failure.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
ノート
任意のユーザコードが実行される前に、プログラムの起動時に、std::setlocale(LC_ALL, "C");のと同じ処理が実行され.
Original:
During program startup, the equivalent of std::setlocale(LC_ALL, "C"); is executed before any user code is run.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
戻り値の型がchar*ですが、ポイント先の文字を変更すると、未定義の動作です.
Original:
Although the return type is char*, modifying the pointed-to characters is undefined behavior.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
setlocale
はロケールに依存した機能の実行に影響を与えるグローバルな状態を変更するので、別のスレッドが次のいずれかの機能を実行している間、それは、一つのスレッドからそれを呼び出すように未定義の動作です:std::fprintf、std::isprint、std::iswdigit、std::localeconv、std::tolower、std::fscanf、std::ispunct、 std::iswgraph、std::mblen、std::toupper、std::isalnum、std::isspace、std::iswlower、std::mbstowcs、std::towlower、std::isalpha、std::isupper、std::iswprint、std::mbtowc、std::towupper、std::isblank、std::iswalnum、std::iswpunct、std::setlocale、std::wcscoll、std::iscntrl、std::iswalpha、std::iswspace、std::strcoll、std::wcstod、std::isdigit、std::iswblank、 std::iswupper、std::strerror、std::wcstombs、std::isgraph、std::iswcntrl、std::iswxdigit、std::strtod、std::wcsxfrm、std::islower、std::iswctype、std::isxdigit.Original:
Because
setlocale
modifies global state which affects execution of locale-dependent functions, it is undefined behavior to call it from one thread, while another thread is executing any of the following functions: std::fprintf, std::isprint, std::iswdigit, std::localeconv, std::tolower, std::fscanf, std::ispunct, std::iswgraph, std::mblen, std::toupper, std::isalnum, std::isspace, std::iswlower, std::mbstowcs, std::towlower, std::isalpha, std::isupper, std::iswprint, std::mbtowc, std::towupper, std::isblank, std::iswalnum, std::iswpunct, std::setlocale, std::wcscoll, std::iscntrl, std::iswalpha, std::iswspace, std::strcoll, std::wcstod, std::isdigit, std::iswblank, std::iswupper, std::strerror, std::wcstombs, std::isgraph, std::iswcntrl, std::iswxdigit, std::strtod, std::wcsxfrm, std::islower, std::iswctype, std::isxdigit.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
例
Run this code
#include <cstdio> #include <clocale> #include <ctime> #include <cwchar> int main() { // the C locale will be UTF-8 enabled English; // decimal dot will be German // date and time formatting will be Japanese std::setlocale(LC_ALL, "en_US.UTF-8"); std::setlocale(LC_NUMERIC, "de_DE"); std::setlocale(LC_TIME, "ja_JP"); wchar_t str[100]; std::time_t t = std::time(NULL); std::wcsftime(str, 100, L"%A %c", std::localtime(&t)); std::wprintf(L"Number: %.2f\nDate: %Ls\n", 3.14, str); }
出力:
Number: 3,14 Date: 月曜日 2011年12月19日 18時04分40秒
参照
std::setlocale のためのロケールカテゴリ (マクロ定数) | |
文化の違いをカプセル化する多相的なファセットの集合 (クラス) | |
setlocale の C言語リファレンス
|