VisualStudio2005について(入門者です) – プログラミング – Home

通知
すべてクリア

[解決済] VisualStudio2005について(入門者です)


yas
 yas
(@yas)
ゲスト
結合: 24年前
投稿: 18
Topic starter  

VC++6.0対応の入門書に記載されているプログラムを2005上でビルドすると、: error
C2664: 'lstrcpyW' : 1 番目の引数を 'char [80]' から 'LPWSTR' に変換できません。
(新しい機能 ; ヘルプを参照)
指示された型は関連がありません。変換には reinterpret_cast、C スタイル キ
ャストまたは関数スタイルのキャストが必要です。
となるのはなぜなんでしょうか?長文すみません。


引用未解決
トピックタグ
Blue
 Blue
(@Blue)
ゲスト
結合: 20年前
投稿: 1467
 

VC2005では文字セットがデフォルトで Unicode になります。
一方VC6 は MSBC(Shift_JIS)になっています。

どのように対処すべきかは、こちらのスレを参考にしてみてください。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=26318&forum=7


返信引用
Ban
 Ban
(@ban)
Prominent Member
結合: 5年前
投稿: 776
 

2005の設定が、UNICODEを使っているからです。

VC6の入門書はおそらく char 型ですが、
UNICODE を使う場合は通常 wchar_t という型を使います。
# wchar_t も C++ の(新しい)型です。

Windows の場合、両者に対応するため、TCHAR というマクロ定義を利用することもあります。


返信引用
yas
 yas
(@yas)
ゲスト
結合: 24年前
投稿: 18
Topic starter  

即回答大変ありがとうございました!問題なく動きました。
これで心置きなく入門書を進めることができます。
またよろしくお願いします!!


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました