困っています(大至急お願いします)

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
通りすがり

困っています(大至急お願いします)

#1

投稿記事 by 通りすがり » 15年前

卒業課題でガンシューティングを作成しているんですがエラーが二つほどあり プロンプトでType mismatch in~というエラーが出るんです

ちなみに作成中のゲームですが単発・連射などがあるんですが、そのうち
連射・狙撃の文字に灰色(Gray)を色づけたいんですが
なかなかできません どなたかエラーを取り除いてくださいお願いします

注意 エラーだけ取れればいいです

#include<stdio.h>
#include<graphics.h>
#include<conio.h>

void ginit(void);
void DispGamen( void );
void Game( void );

int stage, // プレイ中のステージ数
tm, // ゲーム中の残り時間
score, // スコア
gun, // 選んでいる武器の種類
// 0-単発 1-連射 2-散弾 3-狙撃
mg[4] = {0}; // 各武器のマガジン数



void main()
{
ginit();

Game();

closegraph();
}

void Game()
{

stage = 2;
tm = 9999;
score = 1234;
gun = 2;
mg[0] = -1;
mg[1] = 1;
mg[2] = 2;
mg[3] = 3;

DispGamen();


(void)getchar();

}

void DispGamen()
{
char mes[81];
void Gray(void);
cleardevice(); // 画面消去

setfillstyle( SOLID_FILL, GREEN ); // 上下のステータス欄の色
bar( 0,0, 639, 4*16-1);
bar( 0,24*16, 639,479 );

setcolor( YELLOW );
settextstyle(DEFAULT_FONT,HORIZ_DIR,2); // 2倍角
outtextxy( 10,16,"THE SHOT"); // タイトル表示

sprintf( mes, "STAGE %2d", stage );
outtextxy( 150,16, mes ); // 表示

sprintf( mes, "TIME%4d", tm );
outtextxy( 300,16, mes ); // 表示

sprintf( mes, "SCORE%5d", score );
outtextxy( 450,16, mes ); // 表示

setcolor( WHITE );
settextstyle(DEFAULT_FONT,HORIZ_DIR,1); // 1倍角

outtextxy( 16, 24*16, "TARGET" ); // 表示

outtextxy( 40, 29*14, "w" ); // 表示

outtextxy( 10, 27*16, "A" );

outtextxy( 70, 27*16, "D" ); // 表示

outtextxy( 40, 33*14, "S" );

outtextxy( 105, 28*16, "Q" );

outtextxy( 180, 28*16, "E" );

outtextxy( 105, 24*16, "SHOT" );

outtextxy( 120, 25*16, "SPACEKEY" );

outtextxy( 105, 27*16, "GUN CHANGE" );

outtextxy( 250, 26*16, "GUN" );

outtextxy( 390, 24*16, "MAGAZINE" ); // 表示

outtextxy( 380, 26*16, "単発" );

outtextxy( 444, 26*16, "連射" );

outtextxy( 500, 26*16, "散弾" );

outtextxy( 564, 26*16, "狙撃" );

outtextxy( 391, 27*16, "∞" ); //単発

setcolor( Gray );
settextstyle(DEFAULT_FONT,HORIZ_DIR,2); // 2倍角
outtextxy( 430, 26*16, "使用不可"); //連射

setcolor( Gray );
settextstyle(DEFAULT_FONT,HORIZ_DIR,2); // 2倍角
outtextxy( 551, 26*16, "使用不可"); //狙撃

outtextxy( 37, 30*14, "↑" ); // 表示

outtextxy( 37, 32*14, "↓" );

outtextxy( 17, 27*16, "←" ); // 表示

outtextxy( 55, 27*16, "→" );

outtextxy( 117, 28*16, "←" ); // 表示

outtextxy( 162, 28*16, "→" );

}
void ginit()
{
int drv=0,mod;
initgraph(&drv,&mod,"");
}

通りすがり

Re:困っています(大至急お願いします)

#2

投稿記事 by 通りすがり » 15年前

追加ですみません

自分はc言語の知識は結構弱いほうです(ほとんどできません)

たかぎ

Re:困っています(大至急お願いします)

#3

投稿記事 by たかぎ » 15年前

処理系不明ではどうすることもできません。
急ぐのであればなおのこと、利用規約を熟読した上で質問することをお勧めします。

やそ

Re:困っています(大至急お願いします)

#4

投稿記事 by やそ » 15年前

とりあえず、

(void)getchar();

は間違いでは?
intで受け取る変数が必要でしょう。

やたらとvoidが目立つね^^;

non

Re:困っています(大至急お願いします)

#5

投稿記事 by non » 15年前

>(void)getchar();
>は間違いでは?

キー入力にして、動作を止めたいだけでしょう。


何のライブラリなんでしょうか?
void Gray(void);  ってのが気になりますが・・・

通りすがり

Re:困っています(大至急お願いします)

#6

投稿記事 by 通りすがり » 15年前

皆さん、ご指摘などありがとうございます。(処理系なくてごめんなさい<ОО>)明日学校から投稿します

文章書くのが下手ですみません、ええと、void Gray(void);ってのはGrayが宣言されてません的なメッセージが

表示されたので書いてしまいました、後Type mismatch in~ってなんですか?

non

Re:困っています(大至急お願いします)

#7

投稿記事 by non » 15年前

>void Gray(void);ってのはGrayが宣言されてません的なメッセージが 表示されたので書いてしまいました

そんな、あほな・・・・
WHITEでエラーが出ていないなら、GRAYかもね。
graphics.h の中を見たらわかるのではないの?

>後Type mismatch in~ってなんですか?
エラーが出たらな、何行目って出るでしょ。その行か、その前の行に、なにか間違いがあるのでは?
エラーを省略せずに、貼り付けてね。

通りすがり

Re:困っています(大至急お願いします)

#8

投稿記事 by 通りすがり » 15年前

とりあえず、皆さん有難うございました。明日、学校で見て見ます。またこのサイトに来るかもしれません

そのときはよろしくお願いします。<ОО>

通りすがり

Re:困っています(大至急お願いします)

#9

投稿記事 by 通りすがり » 15年前

コメントしてくださった たかぎさん、やそさん、 nonさん 何とかなりましたありがとうございます。

またこの掲示板を利用する際利用規約を熟読するよう心がけます、たかぎさん、すみませんでした。

たかぎ

Re:困っています(大至急お願いします)

#10

投稿記事 by たかぎ » 15年前

> たかぎさん、すみませんでした。

怒っているわけではないので誤解のないように。
遅かれ早かれ必要な情報は出さないといけませんので、要求されるたびに小出しにするより、最初から規約を熟読して、一気に提示した方が解決への近道であるとアドバイスしているのです。

閉鎖

“C言語何でも質問掲示板” へ戻る