検索結果 4 件

by KA582
12年前
フォーラム: C言語何でも質問掲示板
トピック: ブロック崩し
返信数: 8
閲覧数: 3231

Re: ブロック崩し

ソースコードを読ませていただきました。 まず、1の問題についてですが、プレイしてみると点数が上がるたびに表示が一瞬点滅している事がうかがえます。 これはimg_point配列の領域外へのアクセスを行っているため、正しくないグラフィックハンドルが描画関数に渡されたからだと考えられます。 (違う画像が表示されたのは、配列の領域外にたまたま有効なグラフィックハンドルが存在したからだと推測します) 問題の原因は恐らく2つあり、まず1つ目はblockhi1関数で点数を加算する時に19以上の値が算出されてしまうと // garph.cpp void blockhit1(){ // 省略 //ボールとブロッ...
by KA582
12年前
フォーラム: C言語何でも質問掲示板
トピック: 絶対パスでしか画像や音声ファイルが読み込めなくて困ってます。
返信数: 8
閲覧数: 10215

Re: 絶対パスでしか画像や音声ファイルが読み込めなくて困ってます。

相対パスの起点(カレントディレクトリ)は通常、実行可能ファイルが置いてあるフォルダになります。 ですので、Debugフォルダの中にある実行可能ファイルを直接実行すると、Debugフォルダの中に 画像や音声ファイルなどの素材データが存在するものと解釈します。 しかし、Debugフォルダには素材データがないので表示されない、という結果になるのだと思います。 VisualStudioから実行した場合には、VisualStudioが相対パスの起点を自動的にプロジェクトのフォルダに設定してくれます。 その結果、実行可能ファイルの位置とは関係なくプロジェクト内に置かれた素材データを読み込むことができるよう...
by KA582
12年前
フォーラム: C言語何でも質問掲示板
トピック: C言語のネストしたプリプロセッサ命令について
返信数: 3
閲覧数: 4735

Re: C言語のネストしたプリプロセッサ命令について

>>salsawwさん >また、基本的に予期せぬマクロの再定義(※値が同じ場合は無視される。)はエラーになるオプションなどがあるか、 基本としてエラーかWarningを吐かれると思うので、通常の利用方法で特別に問題は発生しないと思われます。 僕としては、このエラー自体を発生させないための方法を考えていました。 例えば、自分のソースコードで再定義エラーが発生したのなら解決する事が出来ますが、 ライブラリなどとして提供した場合にユーザーがエラーを修正しようと思ったら「編集権限がなかった!」という事が考えられますので・・・。 この問題に関してはそもそも被らない名前を考えた方が近道なのかもしれませんが...
by KA582
12年前
フォーラム: C言語何でも質問掲示板
トピック: C言語のネストしたプリプロセッサ命令について
返信数: 3
閲覧数: 4735

C言語のネストしたプリプロセッサ命令について

初めて利用させていただきます<(_ _)> C言語でマクロを使って定数値を定義したいと考えています。 既にどこかで同名のマクロが定義されている場合は、そちらを優先したいので、 次のような定数値を定義してくれるマクロを定義しました。 /** * @brief 同名のマクロが存在しない場合にマクロを定義します。 * @param define_name 定義するマクロ名 * @param define マクロの定義 */ #define NON_OVERWRITE_DEFINE(define_name, define) \ #ifndef define_name \ #define define_...

詳細検索ページへ移動する