Announcement

Collapse
No announcement yet.

Der nicht rechnende Taschenrechner

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Der nicht rechnende Taschenrechner

    Hi,

    ich habe folgendes Problem, wir haben bei uns in der Schule eine Aufgabe erhalten und sollen einen Taschenrechner mit einer GUI bauen, der 2 zahlen errechnet nun hab ich aber folgendes Problem, ich habe 2 Textboxen und eine für die ausgabe, aber der Taschenrechner rechnet nicht, er fügt den inhalt beider textboxen einfach zusammen und schreibt dies in der 3ten rein.

    Code:
    const char* tb_wert1;
    const char* tb_wert2;
    
    int wert1 = atoi(tb_wert1->Text());
    int wert2 = atoi(tb_wert2->Text());
    
    if(wert1 > 99 || wert2 > 99)
    {
         MessageBox::Show("Fehler");
    }
    else
    {
    	tb_result->Text =wert1 + wert2;
    }
    bin mir nicht ganz sicher obs so funktioniert oder ob ich fehler reingebaut habe und hoffe es kann mir vielleicht jemand helfen.

    mfg HerzBlut

  • #2
    int summe=wert1 + wert2;
    tb_result->Text=summe;
    Christian

    Comment


    • #3
      Danke für deine Antwort, aber leider geht es immer noch nicht, er schreibt den wert aus Feld1 und Feld2 in Feld3 und hat Fehler mit dem atoi();

      mfg HerzBlut

      Comment


      • #4
        sehe kein Feld3 und welcher Fehler auftritt ist auch unbekannt
        Christian

        Comment


        • #5
          Also

          Feld1 = tb_wert1
          Feld2 = tb_wert2
          Feld3 = tb_result

          die Fehler der kommen sind diese hier:
          Fehler 1 error C2664: 'atoi': Konvertierung des Parameters 1 von 'System::String ^' in 'const char *' nicht möglich
          Fehler 2 error C2664: 'atoi': Konvertierung des Parameters 1 von 'System::String ^' in 'const char *' nicht möglich
          Fehler 3 error C2664: 'void System::Windows::Forms::Control::Text::set(System: :String ^)': Konvertierung des Parameters 1 von 'int' in 'System::String ^' nicht möglich

          mfg HerzBlut

          Comment


          • #6
            Wenn tb_wert1 vom Typ char ist, was ist tb_wert1->Text??

            char ist keine Klasse und hat keine Methoden.
            Christian

            Comment


            • #7
              Um ehrlich zu sein, weiss ich nur nicht wie ich den wert der Textbox ermitteln kann, jemand sagte mir dann das geht über ->Text.

              mfg HerzBlut

              Comment


              • #8
                Sicherlich mit der Textbox...die wird einen Namen haben.
                Christian

                Comment


                • #9
                  ja, tb_wert1 für den ersten Wert der eingegegeben wird.

                  mfg

                  Comment


                  • #10
                    Der char hat dann den gleichen Namen? '

                    Des Weiteren gibt es sicherlich bessere Methoden als ATOI ...schau mal in der Hilfe nach.
                    Christian

                    Comment


                    • #11
                      Ich hab vorher mal VB gemacht und da konnte ich die werte aus den Textboxen auslesen mit feldname.value aber iwie geht es nicht mit c wenn du mir sagen kannst, wie ich die werte aus den textfeldern bekomme so das sie int sind und ich damit arbeiten kann wäre das ne top hilfe den rest bekomm ich selbst hin.

                      mfg

                      Ja, ich weis einfach nur nicht wie ich den wert aus der Textbox holen soll in VB wars ja mit *.Value aber das gibt es ja in C++ iwie nicht kannst du mir sagen wie ich die werte da raushole und damit dann rechnen kann du würdest mir wirklich sehr helfen auf anfrage kannst du auch icq oder msn addy haben

                      mfg
                      Zuletzt editiert von Christian Marquardt; 27.08.2009, 18:58.

                      Comment


                      • #12
                        Ich habe kein Visual C++, kann also nur allg. C/C++ beantworten. Nutze wenn dann noch den C++Builder.

                        Üblicherweise ist der Name des Objektes zu verwenden.

                        Also sollte erstmal

                        CString test= Name_der_Box->Text()

                        den Wert in den String test schreiben.

                        ein

                        int wert1=atoi(test);

                        sollte dann das zu einem int konvertieren.
                        Christian

                        Comment


                        • #13
                          Also ich habe jetzt


                          Code:
                          CString wert1= tb_wert1->Text();
                          			CString wert2= tb_wert2->Text();
                          
                          			int zahl1 = atoi(wert1);
                          			int zahl2 = atoi(wert2);
                          
                          			 if(zahl1 > 99 || zahl1 > 99)
                          			 {
                          				 MessageBox::Show("Fehler");
                          			 }
                          			 else
                          			 {
                          					int summe= zahl2 + zahl1;
                          					tb_result->Text()=summe; 
                          			 }
                          so die codierung gemacht, aber er scheint ein prob mit dem CString zu haben, ich habe die libs geladen

                          Code:
                          #include <CString>
                          #include <iostream>
                          es kann ja nicht mehr weit zur lösung sein vielleicht schaffen wir es zusammen

                          mfg

                          Comment


                          • #14
                            http://msdn.microsoft.com/en-us/library/ms174288.aspx

                            da sind andere includes angegeben
                            Christian

                            Comment


                            • #15
                              Die habe ich irgendwie nicht

                              Fehler 1 fatal error C1083: Datei (Include) kann nicht geöffnet werden: "afxstr.h": No such file or directory

                              kann man sich die irgendwo runter laden?

                              mfg

                              Comment

                              Working...
                              X