0

私はこのコードを持っています:

static char szTop[] = "iMsg             wParam              lParam";
static char szUnd[] = "____             ______              ______";
static char szFormat[] = "%-16s%04X-%04X        %04X-%04X";
static char szBuffer[50];
static HWND hwndButton[NUM];

そして、それは私にエラーを与えます:

error C2143: syntax error : missing ']' before ';'
error C2143: syntax error : missing ';' before ']'

別のコードは次のとおりです。

for(i=0;i<NUM;i++)
    hwndButton[i] = CreateWindow ( "button", button[i].text, WS_CHILD | WS_VISIBLE | button[i].style, cxChar, cyChar * (1+2*i), 20*cxChar, 7*cyChar/4, hwnd, (HMENU) i, ((LPCREATESTRUCT) lParam )->hInstance, NULL );
return 0;

そして、これは私にエラーを与えます:

error C2146: syntax error : missing ')' before identifier 'i'
error C2059: syntax error : ';'
error C2059: syntax error : ')'
error C2146: syntax error : missing ';' before identifier 'hwndButton

以前に必要なものを次のように定義しました。

static char szTop[] = "iMsg     wParam              lParam";
static char szUnd[] = "____         ______      ______";
static char szFormat[] = "%-16s%04X-%04X        %04X-%04X";
static char szBuffer[50];
static HWND hwndButton[NUM];
static RECT rect;
static int cxChar,cyChar;
HDC hdc;
PAINTSTRUCT ps;
int i;
TEXTMETRIC tm;
4

1 に答える 1

0

その最初のものについては、これは型またはマクロの定義が整っていないことが原因である可能性がありHWNDますNUM

2 つ目は、最初のエラーが原因で、定義する前に の使用について不平を言っていhwndButtonます。変数を定義しようとしたステートメントに以前のエラー エラーがあったため、その変数は定義されませんでした。

まず、正しいヘッダーが含まれていることを確認します。入っていると思いますwindef.h、通常はwindows.hヘッダーファイルに含まれています。

次に、NUMが実際にどこかに定義されていることを確認します。

エラーの 1 つがloop ステートメントにNUM由来するため、ものは使用されていませんが、使用されているため、おそらくそれが原因だと思います。forwindows.hNUM

于 2012-10-10T00:26:36.697 に答える