> GetDrawStringWidthなどの引数にある半角文字単位とは何ですか?
> 単純に考えてバイト単位なのかなと思ったのですが、何か意図があったりするんでしょうか?
はい、バイト単位です
こちらの解説を書いたのが文字コードがシフトJISなのが当たり前の頃で現在のように
UTF-16なら半角でも2バイトだったり、UTF-8では全角だと3バイトだったりといった
複雑な事情がある前の頃の文章なので特に深い意図はありません
> また、GetDrawStringWidth関数は第一引数がTCHAR型です。
> 調べてみると、この型は環境によってワイド型とキャラ型に切り替わるそうなのですが、
> TCHAR型がワイド型の時、GetDrawStringWidth関数の第二引数に指定するStrLenの大きさはワイド型文字列のバイトサイズを渡せばいいのでしょうか?
ワイド文字の場合は文字列のバイト数をsizeof(wchar_t)で割った値となります
ワイド文字の場合は1文字を2つのwchar_tで表現されることは滅多にないので、殆どの場合単純な文字数となります