- ベストアンサー
コンパイルエラー
error C2143: 構文エラー : ';' が '__stdcall' の前にありません。 error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません error C2440: '初期化中' : 'int (__stdcall *)(HWND,UINT,WPARAM,LPARAM)' から 'WNDPROC' に変換できません。 というエラーが出て困っています。 ご教授お願いします。 使用参考書:15歳からはじめる DirectX9 3Dゲームプログラミング教室 使用環境:Microsoft Visual C++ 2008 Express Edition SP1 DirectX SDK(dxsdk_feb2007) Microsoft Platform SDK(たぶん最新版) ソース: http://gemuwotukurou.web.fc2.com/d3d/d3dtest.zip よりダウンロードしてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
my3dlib.cpp LERSULT WINAPI MsgProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ){ ↓ LRESULT WINAPI MsgProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ){ main.cpp INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR, INT ) ↓ int WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR, int ) 通常、WinMainは int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ); とプロトタイプ宣言されてる筈。ここを「INT」と説明している文献や資料は、見た事がない。INTがintとtypedefされてる限りは大丈夫だろうけど。
その他の回答 (2)
- php504
- ベストアンサー率42% (926/2160)
//ウィンドウプロシージャ LERSULT WINAPI MsgProc~~ のところがタイプミスのようです LERSULT ↓ LRESULT
お礼
!! 私のタイプミスです。 ありがとうございます!!
- BDTF
- ベストアンサー率55% (38/68)
なんだかソースのダウンロードはできなかったのですが…… とりあえず一行目のエラーは単純に文末の ; が足りないのではないでしょうか。 エラーで指定される行の一つ前の行に無かったりするので注意です。
補足
すみません ソースはこちらからお願いします。 http://gemuwotukurou.web.fc2.com/d3d/d3dtest.html
お礼
エラーがすべて消えました。 参考書の方には、INTと大文字で書いてあったんですけどね。 プログラム関係の本って間違いが多いですね。 大変ありがとうございました。