ブックタイトルTET5
- ページ
- 28/228
このページは TET5 の電子ブックに掲載されている28ページの概要です。
秒後に電子ブックの対象ページへ移動します。
「ブックを開く」ボタンをクリックすると今すぐブックを開きます。
このページは TET5 の電子ブックに掲載されている28ページの概要です。
秒後に電子ブックの対象ページへ移動します。
「ブックを開く」ボタンをクリックすると今すぐブックを開きます。
TET5
}TET_TRY(tet){for (pageno = 1; pageno <= n_pages; ++pageno){/*ページを処理*/if (/*エラーが起きた*/){TET_EXIT_TRY(tet);return -1;}}/* API関数群を直接・間接に呼び出すステートメント群*/}TET_CATCH(tet){printf("エラー%dが%s()内で%dページ上で発生しました: %s\n",TET_get_errnum(tet), TET_get_apiname(tet), pageno, TET_get_errmsg(tet));}TET_delete(tet);名前文字列に対するUnicode処理Cプログラミング言語は、バージョンC11でのみ、純粋なUnicode文字列に対応しています。このバージョンはまだ一般的には対応されていませんので、TETは、古典的なcharデータ型に基づいてUnicode対応を提供しています。API関数に対する文字列パラメタのなかには名前文字列として宣言されているものがあります。これらはlengthパラメタと、文字列の先頭のBOMの有無とによって処理のされ方が異なります。Cの場合、lengthパラメタが0でないときは文字列はUTF-16と解釈されます。lengthパラメタが0のときは、文字列がUTF-8 BOMで始まっていればUTF-8と解釈され、EBCDIC UTF-8 BOMで始まっていればEBCDIC UTF-8と解釈され、BOMがなければautoエンコーディング(ただしEMBDICベースのプラットフォーム上ではebcdic)と解釈されます。オプションリストに対するUnicode処理オプションリストに文字列を含めるときは特別な注意が必要です。なぜなら、それはUTF-16形式のUnicode文字列として表すことはできず、バイト列として表すことしかできないからです。そのため、Unicodeのオプションに対してはUTF-8が用いられます。オプションの先頭のBOMを見て、TETはそれをどう解釈するかを決めます。このBOMを用いて文字列の形式が判定されます。具体的には、文字列オプションの解釈動作は以下の通りです:>オプションがUTF-8 BOM(\xEF\xBB\xBF)で始まっていればUTF-8と解釈されます。>オプションがEBCDIC UTF-8 BOM(\x57\x8B\xAB)で始まっていればEBCDIC UTF-8と解釈されます。> BOMがなければ文字列はwinansi(ただしEBCDICベースのプラットフォーム上ではebcdic)として扱われます。注記TET_convert_to_unicode( )ユーティリティ関数を用いると、UTF-16文字列をUTF-8文字列に変換することができます。Unicode値を持つオプションリストを作りたいときに便利です。実行時に読み込まれるDLLとしてTETを使用多くのクライアントではTETを、リンク時に結合される静的結合ライブラリか動的ライブラリとして利用しますが、DLLを実行時に読み込んですべてのAPI関数へのポインタを動的に取得することも可能です。これは28 3章: TETライブラリの言語バインディング