• ベストアンサー

C++とWIN32APIとゲームプログラミング

zwiの回答

  • zwi
  • ベストアンサー率56% (730/1282)
回答No.3

>1、Win32APIはC言語で書くものなんでしょうか? より正確に言うとC言語でも書けるって処でしょうか。 C++で書く分には何の問題もありません。 それに、C++はC言語の仕様も内包しているのでC言語のコードを参考にしたり、そのまま使うことも出来ます。 DirectXを将来的に使うことを考えておられるなら、C++で実装されているDirectXを使うにはC++の方が向いています。 >2、ポインタの概念について ベースレジスタとかインデックスレジスタに入れる値を保持しているDSって感じでしょうか。 擬似アセンブラでポインタを説明しているこのサイトならわかり易いんじゃないかと思います。 http://www.nurs.or.jp/~sug/soft/tora/index.htm 私もアセンブラからCに入ったので、ポインタは理解しやすかったのですが混乱したのは次の一点だけです。 int *ptr; ptr = NULL; printf( "%p", ptr+1 ); これの答えはなんでしょう? たぶん間違うと思います。 >3、まだGUIには進んでませんがウインドウのメニュー(ファイル、編集等)を作るのにリソースファイルも作るって説明が上記ページ(猫でもわかる)に書いてましたがリソーススクリプトとかヘッダーもプログラム言語とは別に勉強する必要があるんでしょうか? そんなに難しくないです。 単なるちょっとしたデータです。 リソースを作るフリーソフトも存在します。 >4、C++のクラス概念について >クラスとは複数の関数をひとまとめにしてグループ管理(おおざっぱに言うとサブルーチンの集まり的な)するようなものってイメージであってますか? そう考えて使うと手続き型言語であるC言語の使い方の域を出られません。オブジェクト指向に関しては別の勉強をされた方が良いでしょう。 >5、WindowのGUIアプリのプログラムの概要ですが各オブジェクト(ウインドウやボタン、マウスポインタ等)に対して「クリックされた」とかのアクションに対して動作するプログラムを書くって事でいいんでしょうか? アプリは、そんな感じです。 ゲームは、cyacya2000さんの解説されているとおりです。 >6、お勧めの参考書籍について C++なら、「ロベールのC++入門」とか「明解C++」とか。 >7、勉強の進め方や「合わせてこれも勉強しろ」っていう項目があれば教えてください。 直接DirectXまで進むと大変なので、DXライブラリをお薦めします。 2DのゲームならDirectXよりも遥かに簡単に作ることが出来ます。 ちなみにDXライブラリの中身はDirectXです。C++じゃなくてC言語で作成出来ます。C++で作っている人もいます。 「DXライブラリ置き場 HOME」http://homepage2.nifty.com/natupaji/DxLib/ 「ゲームプログラミングの館」http://dixq.net/g/ 「ゲーム作りで学ぶ!実践的C言語プログラミング」http://karetta.jp/book-cover/game-programming 参考になれば幸いです。

midugane
質問者

お礼

お礼、大変遅くなってしまいすみませんm(_ _)m zwiさん、以前も別の質問でご回答くださってますね。感謝します。 Win32Apiがなんとなくわかった気がします(その気になってるだけですが・・・) 言語の中にAPI関数を記述しその機能を呼び出してるんですよね? OSの機能を使うための関数がAPIみたいな? まだこのレベルです・・・ ポインタについてですがポインタ自体はわかりましたが (参考ページは読ませてもらいました。) 利便性がいまいち理解できてません。たとえば文字列で何文字目の 文字だけ取り出すとかだと使えそうですがポインタのポインタとか さらにそのポインタとかこんなややこしいことしたら自分がこんがらがってしまいそうです。 ↓宿題ですが答えを先に見るのが嫌なのでまだ試してませんが int *ptr;   →int型のポインタptrを作成 ptr = NULL;  →ptrにNULLを代入→NULLポインタ=0になる printf( "%p", ptr+1 );  →int型ptrに1を足してptrの番地(表現が正しいかわかりませんが)を出力 で結果ですが 「4」でいいんでしょうか? お勧めいただいたC++の本ですが本屋さんで実際に見て厚さにビビってしまい「ゲーム作りで学ぶ!実践的C言語プログラミング」だけ買ってきました。せっかく進めてくれたのにすみません。 お勧めページですが参考にさせていただきます。 ありがとうございます。頑張って勉強してみます☆

関連するQ&A

  • C++とゲームプログラミング

    ■C言語とWin32APIでしばらくコーテイングしていましたが、 最近、C++言語を始めた者です。 ■勉強の為、C++とWin32APIで書かれゲームプログラムを探しています。 ■DirectXなどは使用してない物を希望します。 適当なHP(教材)を教えて下さい。

  • VC++でwin32APIを作っているのですが・・・

    こんにちは。私はwin32APIを勉強しているc言語初心者です。 私はMicrosoft Visual C++ 2008を使ってc言語のwin32APIをプログラミングしているのですが、独学でやっているので物凄く邪道なwin32APIプログラミングをしているような気がするのです。 ・c言語のプログラムを書いて、C++のwin32APIプロジェクトとしてビルドする。 ・ヘッダーファイルにwin32API関数がなかったので、自分のwindowOSからwin32API関数を探し出してVC++2008のなかのincludeフォルダ内にコピー&ペーストして使えるようにした。 これって邪道ですか?一応何の問題もなくwin32APIプログラムが作れるのですが、もっと正規なやり方があるでしょうか。回答よろしくお願いします。

  • C言語でWin32API

    C言語を使ってWin32APIを呼び出すような、Windowsプログラミングを始めたいんですが、何かよい本やサイトはご存知ないでしょうか。 Visual C++6.0はあるんで、それを使えばいいと思うんです。 C言語はわかるんですが、Windowsプログラミングに関する知識はほとんどないので、ごく基本的なことから知りたいんです。 WinMain関数というのを書くようなんですが、その書き方すら知りません。  スケルトン(出来れば、それよりもっと基本的なこと)から書いてあるようなものです。

  • C#プログラミングに役立つAPIの本???

    もっぱらC#を使用しています C言語のプログラム遺産の活用等には全く縁の無い私です だから今後もC#だけで行こうと思っております VC++などに移る気などサラサラありません それ故に、念のために ・・・・・ 実は内心では心配だから、APIだけは勉強しておこうと思って教科書を探しました 日経ソストウエアが出版している『APIで学ぶWINDOWS』¥2095を購入しましたが的外れ! ウインドウズの解説本でありプログラミングには役立ちません 更にC#プログラミングに役立つAPIの本を探したのですが、適当なものが見つかりません ご存知でしたら教えてください、お願い申し上げます

  • APIとMFC

    WindowsでC言語で書けて(利用できて)無料のものがAPI、C++で使えて有料なものがMFC だから、アマチュアプログラマーは、APIが使いこなせるのならば、APIを使ってプログラムを 書いたほうがいい という理解で正しいでしょうか。 ここでAPIと書いたのはWin 32 APIのことです。

  • 【Cか】ノベルゲーム【Javaか】

    情報工学科(進学予定)の大学1年生で、専門的なことはまだやっていません。 1年のうちに趣味と学業をかねてプログラムを少しやっておこうと思い、 ビジュアルノベル系のゲームが好き、フォトショップなども使えることから ノベルゲームを1から作ろうと前々から思っていました。 ですが、どの言語にするかきっちり定まらず、結果CとJavaの入門書を終えた段階にいます。 要はどっちつかずな状態です。 ちなみにプログラムのお勉強という意味合いも含め、NScripterなどは使うつもりはありません。 ――初めはCをやっていたのですがCでGUIを扱うにはWin32API?なるものが必要だと知り、そして Javaだと比較的簡単に扱えると知って、Javaをはじめ、 しかし今振り返ってみてCとJava、どちらにするか絞りきれません。 なにかアドバイスいただけたらと思います。 よろしくお願いいたします。

  • .NET frameworkとWIN32API

    c#の勉強をしていたらWIN32APIを[ ]演算子で囲って直接呼び出すコードが多数 あるのですが、 .NET Frameworkだけで高度な(デバイスドライバなどの深い部分)プログラムを書くことはできないのでしょうか。 それとも動作が速いとかそういう理由でwin32apiを呼び出したのでしょうか。 .NET frameworkはwin32apiの上に位置するというのはわかるのですが・・・

  • MFCなのかWin32APIなのか

    みなさんはじめまして。グフです。 これからWindows上でC/C++(VisualStudio.NET2003) にて、Windowsアプリケーション開発の勉強を始め ようとしています。 いろんなサイトや書籍を見ている中で、Windowsアプリ の開発方法としてMFCをつかうやり方と、Win32APIで 開発する方法の2つがあることがわかりました。 これからWindowsの勉強を行うにはどちらの方法で開発 するのが望ましいのでしょうか? ケース by ケースだとは思いますが、何かアドバイス いただければと思いまして、投稿させていただきました。 やはり基礎からおさえるのであれば、Win32APIの方が よろしいのでしょうか? 今後のWinFX環境を考えると、Win32APIでの知識が無駄 になってしまうということはないのでしょうか?

  • C言語次のステップ

    C言語について一通り勉強しました。 (入門的な本に書いてあるような事柄) 次に勉強するといいことを教えてください。 それから、入門レベルよりひとつ上の内容の書籍があれば教えてください。 ポインタ、アセンブラ、 マルチスレッド、マルチプロセス、といった ちょっと深いテーマみたいなのも教えてください。 (ここにあげたのもいまいちわかってませんが、、)

  • C++ Win32APIでツールバーの位置を下にしたい。

    C++ Win32APIでツールバーの位置を下にしたい。 C++ Win32APIを勉強中でして、ウインドウを作成し、ツールバーをCreateWindowsEXで作成したのですが、このツールバーをウインドウの下部に表示する事は出来ないのでしょうか? ネット上のサイトには作成までの手順は載ってはいたのですが、ツールバーの位置を変更する処理はどうしても見つかりませんでした。 どなたかご存知の方いらっしゃいましたらご指導のほどよろしくお願い致します。