FreeBASIC WCHR
目次→実行時ライブラリー参考→文字列関数→WCHR←オリジナル・サイト
1文字以上のユニコード文字を含む、ワイド文字型文字列を返します。
構文:
用法:
result = Wchr
( ch0 [, ch1 ... chN ] )
パラメタ:
ch
文字のユニコード整数値。(最大 32 文字)
戻り値:
ワイド文字型文字列を返します。
記述:
Wchr は、渡されたユニコード値によって表される文字を含む、ワイド文字型文字列を返します。
Wchr を、数の定数または直定数(literals)で使うとき、結果はコンパイル時に評価されます。このため、Wchr を、可変的なイニシャライザとして使うことができます。
どのマシン上でも、すべてのユニコード文字を表示できる、というわけではありません。利用できる文字は、実行画面(コンソール)で現在使用中のフォントに依存します。
GfxLib 内蔵の字体が、ユニコードではないので、描画モードでは、ユニコード文字を表示できません。
例:ソース・コード(.bas ファイル)は、UNICODE で保存します。
Print "UNICODE 934 が表す文字は:" & Space(Len("UNICODE 934 が表す文字は:")); WChr(934) & Space(1)
Print "複数の UNICODE 文字:" & Space(Len("複数の UNICODE 文字:")); WChr(933, 934, 935) & Space(3)
Sleep
とすると、以下のように出力されるでしょう:
次の例を、Shift_JIS と Unicode で、それぞれ保存したうえでコンパイルしてみましょう。
Unicode の文字コードを出力するために、Shift_JIS で保存した場合は、変数 WString を使う必要があります。
しかし、Unicode で保存した場合は Asc で、直接 Unicode の文字コードを出力できます。
注:日本語 Windows 標準設定の、コマンド プロンプトの「ラスターフォント(Raster font ビットマップ・フォント)」では、Print で、ユニコードの文字を表示しようとすると、半角ベースの幅しか確保しません。このため、全角の文字を含む文字列を表示すると、右端が欠落します。
上の例のコードでは、文字数だけ、空白を、Space で追加して、表示させる幅をかせいでいます。
ユニコード のソース・コード(.bas ファイル)で、全角文字の Print を補助する、ユーザ定義関数 Expand もあります。
コマンド プロンプトのタイトルバーを右クリックしてプロパティを表示させて、右画面のように、フォントを、「MS ゴシック」に変更すれば、プログラムで細工しなくても、素の print で全角文字列を表示できます。
これも、2ちゃんねるの、「デフォルトの名無し」さんに教えていただきました。
プラットホーム差:
方言差:
-
別名__Wchrと共に参照をつけない場合、-lang qb 方言で利用できません。
QBからの違い:
参照:
ページ歴史:2022-04-02 03:04:44
日本語翻訳:WATANABE Makoto、原文著作者:AntoniGual