[C++]Hilfe bei VCL



  • Hey,
    ich habe ein kleinen Problemchen & zwar möchte ich gerne einer Array Zeichenkette von 0 bis 7 einen Wert "0" außerhalb "void __fastcall" verpassen, wie würde es gehen?

    //Hier kommt : 
    int zahl[6];
    int i;
    
    for(i=0; i < 7; i++)
    {
    	zahl[i]=0;
    }
    //hin.
    
    void __fastcall TForm2::Button1Click(TObject *Sender)
    {
    //z. B.
    zahl[0] = 21;
    zahl[6] = 5;
    Edit1->Text = zahl[0]+zahl[1]+zahl[2]+zahl[3]+zahl[4]+zahl[5]+zahl[6];
    }
    

    Ich müsste innerhalb "void __fastcall" wieder drauf greifen können!
    Alle meine möglichkeiten sind bis jetzt gescheitert, hat vlt einer von euch ne möglichkeit für mich?

    Danke im vor-raus.



  • Hallo

    Was denn nun, eine Array von Typ Zeichen (char[]) oder Array vom Typ Zahl (int[])?
    Und ein Array der Größe 6 hat auch nicht Elemente von 0 bis 7, sondern von 0 bis 6 (um Quellcode it es ja richtig)
    Ein Array vom Typ Zahlen kannst du so initialisieren :

    int zahl[6] = {0, 0, 0, 0, 0, 0};
    

    bis bald
    akari



  • zum Beispiel so:

    //---------------------------------------------------------------------------
    
    #include <vcl.h>
    #pragma hdrstop
    
    #include "Unit1.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    int zahl[7];
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
    	: TForm(Owner)
    {
    	for(int i = 0; i < 7; i++)
    	{
    		zahl[i] = 0;
    	}
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button2Click(TObject *Sender)
    {
    	zahl[0] = 21;
    	zahl[6] = 5;
    	Edit1->Text = zahl[0]+zahl[1]+zahl[2]+zahl[3]+zahl[4]+zahl[5]+zahl[6];
    }
    //---------------------------------------------------------------------------
    


  • Guten Morgen! 😉



  • @ akari

    Sorry meinte Array Ganzezahl also "Integer".
    Und natürlich "akari" du hast recht es existieren nur 7 Elemente von 0 - 6 mein Fehler. 🙄
    Vielen Danke. (:

    @ Jansen

    Dir Danke ich natürlich auch.
    Hab was neues dadurch kennen gelernt. 😉



  • Man sollte jedoch keine globalen Variablen anlegen, sondern als private Member der Form-Klasse. Würde man die Form mehrmals instantiieren, so würde jede Instanz dasselbe Array benutzen (d.h. die Werte gegenseitig überschreiben).

    Ist zwar ein Anfängerprojekt, aber warum nicht gleich richtig lernen?!


Anmelden zum Antworten