名前 | 形式 | 機能説明 | 属性 | 関連項目 | 注意事項
#include <euc.h> #include <getwidth.h>void getwidth(eucwidth_t *ptr);
getwidth() 関数は、現在のロケール用の文字クラステーブルを読み込み、補助コードセットに関する情報を取得します。getwidth() は、この情報を構造体 eucwidth_t に設定します。この構造体は <euc.h> に定義されており、以下の要素を含んでいます。
short int _eucw1,_eucw2,_eucw3; short int _scrw1,_scrw2,_scrw3; short int _pcw; char _multibyte;
補助コードセット 1、2、および 3 に対するコードセット幅の値は、それぞれ _eucw1、_eucw2、および _eucw3 に設定されています。補助コードセット 1、2 および 3 に対するスクリーン幅の値は、それぞれ _scrw1、_scrw2、および _scrw3 に設定されています。
ワイド文字の幅は、_pcw に設定されています。_multibyte エントリは、複数バイト文字を使用する場合は 1 に、単一バイト文字だけを使用する場合は 0 に設定されます。
次の属性については attributes(5) のマニュアルページを参照してください。
属性タイプ | 属性値 |
---|---|
MT レベル | 例外付き MT-Safe |
ロケール変更のために setlocale(3C) が 呼び出されていない限り、マルチスレッドアプリケーションにおいて getwidth() 関数を安全に使うことができます。
getwidth() 関数は EUC でのみ動作します。