ENGLISH page is here.
GET DinopSearchBar
サイト内検索:
HOME
VC++ TIPS
ダウンロード
DinopExifReader
DinopSearchBar
DinopSearchBar mini
DinopTabbingBar
for Firefox
大阪湾の生き物
甲子園浜の自然
甲子園浜の干潟
甲子園浜の水中
甲子園浜の野鳥
近畿の山々
植物図鑑
箕面マップ
水中機材
カメラ
ランキング
望遠鏡の世界
顕微鏡の世界
Googleのすべて
GoogleマップAPI
ニュース
読んだ本
日記
変な料理の作り方
遺伝子操作
論文紹介
デイトレード
自動売買でFX
ネットで小遣い稼ぎ
Solaris
電子工作
その他
問い合わせ
VC++用コード集
大阪湾の生き物
水中用機材
since:2000/11/15
dinopcom@gmail.com
www.dinop.comは
だいのっぷ・どっと・こむ
と読んでください。







« OSのバージョン取得 | メイン | ユニコードからMBCS(ANSI)への変換 »

char、wchar_t(WCHAR)とTCHAR




char

 文字列を扱う型としてよく知られているchar型はsizeof(char)=1バイトの型だ。
 charに代入できるのは半角文字1文字で、漢字など2バイトからなる全角文字を代入したいとき は(微妙な表現だが)2つのcharが必要になる。



wchar_t(WCHAR)

 ユニコードを扱うための型として用意されたのがこのwchar_tだ。sizeof(wchar_t)=2バイトの 型でありchar型よりも使用バイト数が多い。
 wchar_tに代入できるのはユニコードでの1文字で、半角や全角文字などの区別はない。

 ヘッダーの中では以下のように宣言されている。
typedef unsigned short wchar_t;
typedef unsigned short WCHAR;    // wc,   16-bit UNICODE character
 つまりwchar_tとWCHARのどちらもunsigned short型として定義されている。



TCHAR

 1つのソースコードをコンパイルオプションだけで通常ビルドだけでなくユニコードビルドも できるようにするための型がTCHARだ。この型は以下のように宣言されている。
#ifdef _UNICODE
typedef wchar_t		TCHAR;
#else
typedef char		TCHAR;
#endif
 つまり、ユニコードビルド時はsizeof(TCHAR)=2バイトに対して、通常ビルド時はsizeof(TCHAR) =1バイトとなる。








Copyright (c) 1999-2007 issei. All rights reserved. (運営者情報