Bekomme String array nicht "ausgemessen"!!!



  • hi @ all erstmal..

    weiß nicht ob ich das hier jetzt richtig rein schreibe (also von der kategorie her).. ich machs einfach mal ^^

    also ich könnte durchdrehn!!! ich versuche mit dem borland c++ builder 6 aus einem string array die größe zu lesen. also ich will in einem Edit feld ein wort eingeben und das in ein array schreiben. dann halt wissen wie lang das ist. guckt so hier:

    //---------------------------------------------------------------------------
    #include <string.h>
    #include <vcl.h>
    #pragma hdrstop
    
    #include "Unit1.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
            : TForm(Owner)
    {
    
    }
    //---------------------------------------------------------------------------
    
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    
    String array1=(Edit1->Text); //soweit funktioniert das eigentlich.. 
    
    //hier muss das irgendwie hin.. weiß nur nicht wie :(
    
    ShowMessage();//die größe ausgeben .. also als zahl
    }
    

    wär irgendjemand so nett und macht mir das mal bitte? wär total genial!!!
    aber bitte macht keine listen oder so rein. ich versteh noch nicht ganz so viel davon ^^...

    mfg heiden



  • Hallo

    Du hast da kein String-Array, sondern "nur" ein String. Ein String ist selber schon ein Array von Zeichen (char).
    Bei dem Datentyp AnsiString bekommst du die Anzahl der Zeichen so raus :

    String string1= Edit1->Text; //soweit funktioniert das eigentlich..
    ShowMessage(string1.Lenght());//die größe ausgeben .. also als zahl
    

    bis bald
    akari



  • geht nicht.. also ich hab das itz so gemacht:

    //---------------------------------------------------------------------------
    #include <string.h>
    #include <vcl.h>
    #pragma hdrstop
    
    #include "Unit1.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
            : TForm(Owner)
    {
    
    }
    //---------------------------------------------------------------------------
    
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    String acWort=(Edit1->Text);
    String string1= Edit1->Text; //soweit funktioniert das eigentlich..
    ShowMessage(string1.Lenght());//die größe ausgeben .. also als zahl
    }
    

    ich krieg folgende fehlermeldung:

    [C++ Error] Unit1.cpp(27): E2316 'Lenght' is not a member of 'AnsiString'

    was hab ich falsch gemacht? kannst du bitte das ganze ding umschreiben das des funktioniert? ich mein da is net viel falsch oder?



  • naja, wenn du mal in der Hilfe geschaut hättest und etwas Englisch könntest, wärst du vielleicht drauf gekommen, dass es Length heissen muß



  • ha des funktioniert!!!! wenn du mir jetzt noch ne frage beantworten könntest wär ich dir sooooooooooooooooooooooo dankbar!!! also:

    ich will mit dem borland den ich habe was programmiern.. itz hab ich mein Form1 und hab da nen button drauf.. wenn ich auf den drauf klicke soll Form2 aufgehn.. also ich hab das auch.. bloß weiß ich nicht wo und wie ich das deklaraiern muss.. also ich bin auf neu->form.. also form2 gibts.. nur wenn ich das:

    //---------------------------------------------------------------------------
    
    #include <vcl.h>
    #pragma hdrstop
    #include <conio.h>
    #include "Unit1.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
            : TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
    
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    Form2->Show();
    }
    

    compilier krieg ich folgende fehlermeldung:

    [C++ Error] Unit1.cpp(27): E2451 Undefined symbol 'Form2'

    .. wie krieg ich das mit rein das ich das öffnen kann?

    also mit "Form1->Hide(); kann ich mein normales verstecken.. aber ich muss n neues aufkriegen ^^.. wie mach ich das?

    mfg heiden





  • ne ich hab doch was vergessen XD ... sry aber das is wirklich das letzte jetzt ^^.. also wie krieg ich werte von variablen aus Form2 in Form1? also ich hab itz was in der unit 2 deklariert und will den wert in die unit1 kriegen.. wie mach ich das?



  • Wieder was aus der FAQ.



  • zeig ma bitte

    nein hat sich erledigt!!! ich machs mit ner konfig.dat .. so lern ich auch mal biss andres zeugs ^^



  • In Zukunft bitte die Faustregel beachten: ein Thema pro Thread, ein Thread pro Thema.
    Danke!



  • naja klar.. ich wollte halt nur ne weil ich noch ne kleine frage hatte glei wieder nen thread aufmachen.. deswegen hab ich gedacht ich schreibs ma schnell mit hin ^^


Log in to reply