インテル® Fortran コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

National Language Support (NLS) ルーチン

インテル® Visual Fortran は、地域化ルーチンとマルチバイト文字ルーチンを含む完全な National Language Support (NLS) ライブラリーを提供しています。これらのルーチンを使用することで、さまざまな言語でアプリケーションを作成することができます。

多くの言語では、一般的な記号 (英国のポンド記号など) や句読点が足りない、ASCII に含まれていない文字を使用している (ロシアのキリル文字など)、または 1 バイトでは表現しきれないほど多くの文字を持っている (日本語など) といった理由から、標準の ASCII 文字セットでは十分に対応することができません。

アラビア語やロシア語などの多くの非 ASCII 言語では、拡張されたシングルバイト文字セットで十分に対応することができます。そのため、言語ロケールとコードページを変更するだけでよく、システムレベルまたはプログラム内から対応することができます。しかし、日本語や中国語などの言語では、1 バイト文字ではエンコードできない数千種類の文字を使用します。これらの文字を表現するには、マルチバイト文字が必要となります。

文字セットは、コードセットと呼ばれるテーブルに格納されています。コードセットには、言語と国を表すロケール (例えば、スペイン語は国によって違います)、コンピューターのアルファベットを構成する文字表であるコードページ、および画面上の文字を表現するために使用されるフォントの 3 つの構成要素が含まれています。この 3 つの構成要素は、それぞれ別々に設定することができます。Windows* オペレーティング・システムを搭載しているコンピューターには、英語、アラビア語、スペイン語などの複数のコードセットが組み込まれています。中国語や日本語などのマルチバイト・コードセットは標準では含まれていませんが、特別なバージョンのオペレーティング・システムには含まれています (例えば、Windows* NT 日本語版には日本語コードセットが含まれています)。

プログラムの起動時には、オペレーティング・システムからデフォルトのコードセットが取得されます。オペレーティング・システムをインストールするときは、システムで提供されているコードセットをインストールしてください。インストールしたコードセットは、その後はいつでも使用できるようになります。コードセットを切り替えるには次の操作を行います。

新しいロケールを選択すると、そのロケールがシステムで使用されるデフォルトのロケールになり、変更するまでデフォルトとして使用されます。各ロケールには、デフォルトのコードページと、デフォルトの通貨、数値、および日付の表示設定が関連付けられています。

新しいロケールを選択しても、コンピューターを再起動するまでデフォルトのコードページは変更されません。

通貨、数値、および日付の表示設定は、[通貨] タブ、[数値] タブ、および [日付] タブを使用して、ロケールとは別に変更することができます。

ユーザーが使用できる文字セットは、選択したロケールによって決定されます。選択したロケールは、このセクションで説明されている NLS ルーチンのデフォルトのロケールとなりますが、プログラム内からロケールとその引数を変更することができます。これらのルーチンは、外国語でプログラムを作成したり、同じプログラムの異なるバージョンをさまざまな国際市場向けに作成するときに便利です。プログラム内からロケールを変更すると、その変更はそのプログラムにのみ適用され、システムのデフォルト設定には影響しません。

選択したコードページ (コードページは地域とは独立して設定できます) は、このセクションで説明しているマルチバイト文字ルーチン (MB ルーチン) を制御します。コンピューターに特殊なマルチバイト文字コードセットをインストールしているユーザーだけが、MB ルーチンを使用する必要があります。すべての標準コードセットは、シングルバイト文字コードセットを使用します。

インテル® Fortran のソースコードでは、マルチバイト文字は文字列とソース内のコメントでしか使用できないことに注意してください。変数名や文では使用できません。プログラムからのロケールの変更と同じように、プログラムからコードページを変更すると、その変更は、そのプログラムにのみ適用され、システムのデフォルト設定には影響しません。

これらのルーチンを参照するには、NLS ルーチンまたは MB ルーチンを使用するすべてのプログラムユニット内で、次の文を指定する必要があります。

USE IFNLS

関連情報