![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
あるC言語をつかったウィンドウズプログラミングの本に載っていたコードを入力してビルドしようとしたら色々とエラーが出てしまい、今度はその本に付属していたCD-ROMに収録されていたコードを使ってビルドしても失敗してしまいました。
そして、その本を書いてらっしゃる方が管理をしているホームページにVC2005になってデータ型のチェックが厳しくなったと書いてありました。
そのサイトには新しくVC2005のサンプルプログラムが紹介されていたのですが、本に載っていたものとは少し違うようです。しかし、それを使ったら難なくビルドも出来て、ちゃんとウィンドウが表示されました。
ということは、今までに出版された本に載っているウィンドウズプログラミングのコードはVisual C++ 2005 Express Edition では使えないということなんでしょうか。
もし知っていらっしゃる方がいましたら、教えてください。よろしくお願いします。
No.4ベストアンサー
- 回答日時:
「猫でもわかるWindowsプログラミング」でしょ?
この本ならMFCは使ってません
以下「猫本」だと仮定します.
また私はExprssではなく,standardで実験してますので
Expressではどうかは知りません
猫本のサンプルはそのままでは
ことごとくVC++2005では処理できません.
#いや,猫本のサイトには問答無用で通す手も
#書いてるけども,お勧めはできないと書いてますね
猫本のソースは以下のように書き直す必要があります
(1) " "で囲まれた文字はすべて
TEXT(" ")に変更する
(2) strcpyなどの標準ライブラリ関数は
すべてセキュリティ強化版のものに置き換える
警告がでるものだけで十分なはず.
これはMSDNで検索してください。
例えばstrcpyを検索すれば置き換える関数が
みつかります.
(3) 型名などは,すべて``T''のものにする.
例えば,LPCSTRではなくLPCTSTRにする.
これ以外に,暗黙の型キャストで
文句を言われることもあるはずですが
これは明示的にキャストすれば通ります.
また,上記の対策は
UNICODEかそうでないかで同一のソースで
通すための方策も入ってますが
これくらいしないとVC++2005は
通してくれませんでした
#私は面倒なので
#全部UNICODEでやってるので
#そんなに細かく検証してないですけど
今までのWin32APIの本のソースに関しても
この手の対策を施せば多分通ると思います.
詳しい回答をありがとうございます。
とっても助かりました。
一通りCの本は読んだのですが、まだまだ本をあっちこっち見ながらやっている状況なので、大変そうですが頑張ってみたいと思います。
本当にありがとうございました。
No.5
- 回答日時:
No.4です
書き忘れた
Expressだとplatform SDKが必要では?
一応下記URLでMSが説明しています.
#ちょっと古いSDKが公開されているとかいう話だけど
参考URL:http://www.microsoft.com/japan/msdn/vstudio/expr …
No.3
- 回答日時:
使えないって事ではない。
直せば使えるってことでしょう。Windowsプログラミングが確立された時ってエラーチェックも細かいとこまで出来てなかった。で、最近のコンパイラなどはちゃんとしたエラーチェックが出来るようになったので、古いサンプルコードを*そのまま*コンパイルしても通らないってことがおき得ます。
昔はこう組んでて大丈夫だったんだな、ぐらいに考えてくださいね。
考え方や組み方まで変わっているわけではないと思いますから。
No.2
- 回答日時:
- ExpressではMFCが使えません。
なのでMFCによるWindowsアプリは不可。- ExpressではWin32APIが"そのままでは"使えません。なので別途Win32SDKを追加する必要があります。
- ExpressではC++/CLIによるWindowsアプリケーションが作成できます。サイトにあったのはきっとコレでしょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows 10 Visual StudioとVisual C++ Build Toolsについて 1 2023/04/16 03:42
- 作詞・作曲 或る曲の楽譜のコード進行の中に"F onA"なるものがありました。これはどんな和音ですか? 7 2023/05/22 00:34
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- Visual Basic(VBA) VBAのエラーについて 2 2023/08/02 17:46
- Visual Basic(VBA) Changeイベントで複数セルへの貼り付けおよび値削除時に1個目のセルのみエラーになる 3 2022/12/21 09:07
- Java EclipseとVisual StudioをPC1台にインストールしただけではPCは重くならない? 3 2022/12/08 15:35
- その他(パソコン・周辺機器) タブレットで使用するUSBメモリについて 7 2022/05/26 14:27
- Excel(エクセル) excelvbaのwithについて 4 2022/12/19 16:51
- C言語・C++・C# 3×3のラテン方陣をつくるプログラムを作成したのですが、(↓) #include <stdio.h> 5 2023/07/10 01:53
- Ruby Gitのクローンについて 3 2022/04/10 12:28
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
頭がみんなより悪いひとでも、...
-
価格.com的なWebページ作成 お...
-
HSPプログラミングについて
-
directXのバージョンによる違い
-
IPアドレス、サブネットマスク...
-
Xcode4.1か4.5か
-
VCによる、RPGのプログラミング...
-
DirectX9 の学習法
-
Ruby on RailsとRuby
-
MPWでCをするには?
-
C# を始めたいのです. お知恵...
-
3次元データを3D表示
-
T-kernelに関しての質問です。
-
WinAPIを始めるにあたって
-
C、C++のプログラミング勉強に...
-
メタトレーダー4で自動売買する...
-
デバイスドライバのプログラミ...
-
機械学習の学習ステップ
-
VB.NETの入門書
-
C++Builderに関するオススメの本?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
IPアドレス、サブネットマスク...
-
eclipseで関数printfを解決でき...
-
ヤフー知恵袋みたいなサイトを...
-
[ADO]と[ADO.NET]の違い
-
ドライバ開発の勉強方法を教え...
-
シリアルポートの制御に関する書籍
-
大阪梅田でプログラミング関係...
-
ログイン機の付きの掲示板サイ...
-
Windowsアプリケーションを作れ...
-
プログラミング用にどのMacBook...
-
PHPでショッピングカートを自作...
-
本の誤植について
-
本を買うのはもったいない?
-
月額15,000円のプログラミング...
-
メタトレーダー4で自動売買する...
-
Qtを勉強するのに何か良い書籍...
-
C言語プログラミング能力認定試...
-
C、C++のプログラミング勉強に...
-
C++でのロボットのプログラミン...
-
さっぱりわからない
おすすめ情報