マルチバイト文字とUnicodeについて

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
atori
記事: 43
登録日時: 11年前

マルチバイト文字とUnicodeについて

#1

投稿記事 by atori » 11年前

何も考えずにVisualStudioでプログラムしていると、よく

"const charからLPWSTRに変換出来ません"

といったエラーが出ました。とりあえずプロパティからUnicode文字→マルチバイト文字に直せばよいと覚えていたのですが、
さすがに毎回毎回設定しているのが面倒になって来ました。
文字列の定義をchar型でするのではなく、LPTSTR型にするとプロパティをいじらなくてもエラーなく動くようになりました。

自分でやっといて何ですが、これはどうなのでしょうか?
LPTSTR型は#defineで定義されているので、LPTSTR型を多用するだけでもパフォーマンスが若干落ちるのでは・・・と思っています。
しかし、マルチバイトもUnicodeも対応出来ていると素敵なような気もします。

LPTSTR型を使うべきか、はたまたマルチバイト、もしくはUnicodeのどちらか一方だけでプログラムするべきなのか・・・。
どちらが良いでしょうか?
Done is better than perfect.(Mark Elliot Zuckerberg)

Poco
記事: 161
登録日時: 13年前

Re: マルチバイト文字とUnicodeについて

#2

投稿記事 by Poco » 11年前

atori さんが書きました:LPTSTR型は#defineで定義されているので、LPTSTR型を多用するだけでもパフォーマンスが若干落ちるのでは・・・と思っています。
マクロの展開はコンパイルの前処理として行われます。
なのでコンパイルで作成したモジュールのパフォーマンスに影響をおよぼすことは決してありません。

atori
記事: 43
登録日時: 11年前

Re: マルチバイト文字とUnicodeについて

#3

投稿記事 by atori » 11年前

なんと、そうだったのですか・・・。
それでは、これからはLPTSTR型を使っていこうと思います。

私はもっと基礎からしっかり勉強したほうがいいのかもしれません。
ありがとうございました。

このトピックは閉じさせて頂きます。
Done is better than perfect.(Mark Elliot Zuckerberg)

閉鎖

“C言語何でも質問掲示板” へ戻る