今、BCCデベロッパーで龍神録をまねているのですが、if文の構文エラーで先に進めません。
こちらがコードです。
ファイル名 key.cpp
#include"GV.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];
}
//パッドの入力状態を格納する変数
pad_t pad;
//引数1と引数2のうち大きいほうを引数1に代入する。
void input_pad_or_key(int *p,int k)
{
if(*p > k)
{
*p = *p;
}
else
{
*p = k;
}
}
//パッドとキーボードの両方の入力をチェックする関数
void GetHitPadStateAll()
{
int i,PadInput,mul=1;
PadInput = GetJoypadInputState( DX_INPUT_PAD1 );//パッドの入力状態を取得
for(i=0;i<16;i++)
{
if(PadInput & mul) pad.key[i]++; //入力があったパッドのボタンに対応する変数の値をカウントする
else pad.key[i]=0;
mul*=2; //調べるビットを次のビットにシフトする。
}
input_pad_or_key(&pad.key[configpad.left] ,CheckStateKey(KEY_INPUT_LEFT ));
input_pad_or_key(&pad.key[configpad.up] ,CheckStateKey(KEY_INPUT_UP ));
input_pad_or_key(&pad.key[configpad.right] ,CheckStateKey(KEY_INPUT_RIGHT ));
input_pad_or_key(&pad.key[configpad.down] ,CheckStateKey(KEY_INPUT_DOWN ));
input_pad_or_key(&pad.key[configpad.shot] ,CheckStateKey(KEY_INPUT_Z ));
input_pad_or_key(&pad.key[configpad.bom] ,CheckStateKey(KEY_INPUT_X ));
input_pad_or_key(&pad.key[configpad.slow] ,CheckStateKey(KEY_INPUT_LSHIFT ));
input_pad_or_key(&pad.key[configpad.start] ,CheckStateKey(KEY_INPUT_ESCAPE ));
input_pad_or_key(&pad.key[configpad.change] ,CheckStateKey(KEY_INPUT_LCONTROL));
}
//渡されたパッドキー番号の入力状態を返す。返り値が-1なら不正
int CheckStatePad(unsigned int Handle)
{
if( 0<=Handle && Handle<PAD_MAX )
{
return pad.key[Handle];
}
else
{
printfDx("CheckStatePadに渡した値が不正です\n");
return -1;
}
}
エラー E2188 C:\Users\tomohiro\c言語\bccdev1221\danmaku\Key.cpp 67: 式の構文エラー(関数 CheckStatePad(unsigned int) )
エラー E2377 C:\Users\tomohiro\c言語\bccdev1221\danmaku\Key.cpp 76: If文に ) がない(関数 CheckStatePad(unsigned int) )
と出てしまいます。
しかし、VisualC++でコンパイルするとなぜかコンパイルできてしまいます。
自分では原因がわかりませんでした。
これは開発環境の違いがエラーの原因なのでしょうか?
これからはVC++で開発しないといけないのでしょうか?