2.8.3. マクロおよびユーティリティ関数

Table 2.9 に示すマクロとユーティリティ関数を使用することで、ロケールブロックを作成し、使用するプロセスを簡略化できます。 詳細については、rt_locale.h ファイルを参照して下さい。

Table 2.9. ロケールブロックのマクロと関数

関数またはマクロ説明
__LC_CTYPE_DEFこのマクロを使用すると、文字セットの値のブロックを作成できます。 _get_lc_ctype()を参照して下さい。
__LC_COLLATE_DEFこのマクロを使用すると、文字セットのソート値のブロックを作成できます。 _get_lc_collate()を参照して下さい。
__LC_TIME_DEFこのマクロを使用すると、時刻形式設定値のブロックを作成できます。 _get_lc_time()を参照して下さい。
__LC_NUMERIC_DEFこのマクロを使用すると、数値形式設定値のブロックを作成できます。 _get_lc_numeric()を参照して下さい。
__LC_MONETARY_DEFこのマクロを使用すると、通貨形式設定値のブロックを作成できます。 _get_lc_monetary()を参照して下さい。
__LC_INDEX_ENDこのマクロを使用すると、形式設定値のインデクスの終了を宣言できます。 マクロの使用を参照して下さい。
_findlocale()この関数を使用すると、ロケールブロックのアドレスを返すことができます。 _findlocale()を参照して下さい。

マクロの使用

1 つのロケールカテゴリのデータブロックは連続している必要があり、LC_INDEX_END マクロはそのシーケンス内の最後のマクロである必要があります。

各ロケールカテゴリのサンプルでは、以下のように定義された 2 つのテストマクロが使用されています。

#define EQI(i,j) assert(i==j)
#define EQS(s,t) assert(!strcmp(s,t))
Copyright © 2007 ARM Limited. All rights reserved.ARM DUI 0349AJ
Non-Confidential