Problem beim Ratespiel
-
Hallo,
ich wollte mir ein Ratespiel machen (mit dem C++ Builder)
hab alles so gemacht wie es im Buch steht aber wenn ich dann auf Start drücke zeigt der pc mir das :
//---------------------------------------------------------------------------#include <vcl.h>
#pragma hdrstop#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 Form1;
int Eingabe, Zufall, Edit1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------void __fastcall TForm1::Button1Click(TObject Sender)
{
[Edit1->SetFocus();]
Eingabe = StrToInt [(Edit1->Text);]
if (Eingabe == Zufall)
Label1->Caption = "Richtig geraten!";
if (Eingabe < Zufall)
Label1->Caption = "Deine Zahl ist zu klein!";
if (Eingabe > Zufall)
Label1->Caption = "Seine Zahl ist zu groß!";
}
//---------------------------------------------------------------------------
[C++ Fehler] Unit1.cpp(22): E2288 Zeiger auf Struktur auf linker Seite von -> oder von -> erforderlich*
[C++ Fehler] Unit1.cpp(21): E2288 Zeiger auf Struktur auf linker Seite von -> oder von ->* erforderlich*der fehler soll dort wo in eckige klammern gestzt hab
kann mir einer helfen ??
-
1. [ cpp] Tags benutzen, das kann man so nicht recht lesen.
2. Ins Builder-Subforum gehen
3. Edit1 ist als Integer deklariert. Ein Integer kann nicht dereferenziert werden und hat schon garkeine Eigenschaft "Text".
-
und packe das hier
int Eingabe, Zufall;
besser in den Header unter private:
-
Danke für die schnellen Antworten .....aber da ich C++ gerade lerne hab ich jetzt nicht verstanden was ich machen muss ...hier nochmal in diesem
//--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Raten.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; int Zufall, Eingabe; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { Edit1->SetFocus (); Eingabe = StrToInt (Edit1->Text); if (Eingabe == Zufall) Label1->Caption = "Richtig geraten!"; if (Eingabe < Zufall) Label1->Caption = "Deine Zahl ist zu klein!"; if (Eingabe > Zufall) Label1->Caption = "Deine Zahl ist zu groß!"; } //---------------------------------------------------------------------------
-
Wo belegst du denn Zufall?
Du solltest noch um das StrToInt einen try/catch-Block schreiben um fehlerhafte Eingaben zu vermeiden. Oder du verwendest statt dessen StrToIntDef.
Vielleicht sollte ein Mod diesen Thread mal in das BCB-Forum verschieben.
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum VCL/CLX (Borland C++ Builder) verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.