龍神録プログラミング3章

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

龍神録プログラミング3章

#1

投稿記事 by まつ » 12年前

コード:

//受け取ったキー番号の現在の入力状態
	extern int CheckStateKey(unsigned char Handle);

	int ProcessLoop()
	{
		if (ProcessMessage()!=0)
		{
			return -1;
		}

		if(ClearDrawScreen()!=0)
		{
			return-1;
		}
		GetHitKeyStateAll_2();
		return0;
	}
龍神録プログラミングの3章でこのように入力したところ一番上の{でエラーが出てしまいます。
1 IntelliSense: ';' が必要です
という内容のものが出ますが、他に入力するべき場所がなさそうです。
どうしてこうなるのでしょうか。
何が間違っているのでしょうか。

アバター
みけCAT
記事: 6734
登録日時: 15年前
住所: 千葉県
連絡を取る:

Re: 龍神録プログラミング3章

#2

投稿記事 by みけCAT » 12年前

使用している開発環境は何ですか?
とりあえず、
return-1; → return -1;
return0; → return 0;
としてみてください。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

アバター
みけCAT
記事: 6734
登録日時: 15年前
住所: 千葉県
連絡を取る:

Re: 龍神録プログラミング3章

#3

投稿記事 by みけCAT » 12年前

提示されているコードより前の部分が間違っているかもしれません。
このコード全体、includeしているファイル全体、includeしているファイルがincludeしているファイル全体・・・
を貼っていただけますか?
(DxLib.hやwindows.h、その他の標準ヘッダはいりません)
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

まつ

Re: 龍神録プログラミング3章

#4

投稿記事 by まつ » 12年前

先程より前のものは、
main.cpp

コード:

#define GLOBAL_INSTANCE
#include "DxLib.h"

int Key[256];

int GetHitKeyStateAll_2(int GetHitKeyStateAll_InputeKey[])
{
	//現在のキーの入力処理
	extern int GetHitKeyStateAll_2();

	//受け取ったキー番号の現在の入力状態
	extern int CheckStateKey(unsigned char Handle);
key.cpp

コード:

#include "DxLib.h"

unsigned int stateKey[256];

int GetHitKeyStateAll_2(){
    char GetHitKeyStateAll_Key[256];
    GetHitKeyStateAll( GetHitKeyStateAll_Key );
    for(int i=0;i<256;i++){
        if(GetHitKeyStateAll_Key[i]==1) stateKey[i]++;
        else                            stateKey[i]=0;
    }
    return 0;
}

int CheckStateKey(unsigned char Handle){
        return stateKey[Handle];
}


です。

アバター
みけCAT
記事: 6734
登録日時: 15年前
住所: 千葉県
連絡を取る:

Re: 龍神録プログラミング3章

#5

投稿記事 by みけCAT » 12年前

main.cppに

コード:

#define GLOBAL_INSTANCE
#include "DxLib.h"

int Key[256];

int GetHitKeyStateAll_2(int GetHitKeyStateAll_InputeKey[])
{
	//現在のキーの入力処理
	extern int GetHitKeyStateAll_2();

	//受け取ったキー番号の現在の入力状態
	extern int CheckStateKey(unsigned char Handle);

	int ProcessLoop()
	{
		if (ProcessMessage()!=0)
		{
			return -1;
		}

		if(ClearDrawScreen()!=0)
		{
			return-1;
		}
		GetHitKeyStateAll_2();
		return0;
	}
と書いてあるということですか?
関数内で関数を定義するのはgcc拡張文法であり、さらにC++では使えないそうです。
普通に書いてください。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

まつ

Re: 龍神録プログラミング3章

#6

投稿記事 by まつ » 12年前

ありがとうございます。
どうにかエラーはとれました。

閉鎖

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