Compiler-Fehler bei if-Anweisung
-
Liebe Gemeinde,
was ist hier falsch?LRESULT CALLBACK CheckEditProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) { char chk_pswd[9]; int chk_numb = 0; switch (uMsg) { case WM_INITDIALOG: SetDlgItemText(hDlg, IDC_CONTROLEDIT1, "password"); SetDlgItemInt (hDlg, IDC_CONTROLEDIT2, 12345, TRUE); break; case WM_COMMAND: switch (LOWORD (wParam)) { BOOL btran; case IDOK: GetDlgItemText (hDlg, IDC_CONTROLEDIT1, chk_pswd, sizeof(chk_pswd)-1); chk_numb = GetDlgItemInt (hDlg, IDC_CONTROLEDIT2, &btran, TRUE); if ((strcmp(chk_pswd, PASSWORD) == 0) && (chk_numb == NUMMER))//Hier tritt der Fehler auf, s. u. { MessageBox(hDlg, "Login erfolgreich", "Willkommen", MB_OK); } else MessageBox(hDlg, "Zugriff verweigert", "Passwort falsch", MB_OK); EndDialog(hDlg, IDOK); break; case IDCANCEL: EndDialog(hDlg, IDCANCEL); break; } break; default: return (FALSE); } return (TRUE); }Wie man sieht, versuche ich ein Programm mit Dialogboxen zu schreiben. Aber bei der if-Anweisung gibt mir der Compiler (Borland C++) die Fehlermeldung
) expected//gemeint ist die schließende Klammer If statement missing ) expression syntaxIch kann mir das nicht erklären, weil ich die Klammern und Semikolons x-mal durchgezählt habe.
Wer hilft mir weiter?
-
Fehler findet man durch minimierung auf das nötigste.
-
Elektronix schrieb:
Ich kann mir das nicht erklären, weil ich die Klammern und Semikolons x-mal durchgezählt habe.
Ich vermute da ein überflüssiges Semikolon bei der Definedirektive für PASSWORD oder NUMMER.
-
MFK schrieb:
Ich vermute da ein überflüssiges Semikolon bei der Definedirektive für PASSWORD oder NUMMER.
Wow, Du bist klasse! Woher hast Du das gewußt?

Danke vielmals!