Entwickler-Ecke

Off Topic - Dynamisches Array C++


GericasS - Mi 09.06.10 19:14
Titel: Dynamisches Array C++
Hallo,

ich hab heute folgende Übungsaufgabe angefangen zum Thema Pointer(Zeiger) :

Zitat:

Erstellen Sie eine C++-Anwendung, in der Sie dynamisch ein eindimensionales Array vom Typ short erstellen. Der Anwender Ihres Programms soll angeben können, aus wie vielen Elementen das Array bestehen soll. Legen Sie abwechselnd in alle Elemente des Arrays die Zahlen 0 und 1 hinein und geben Sie danach den Inhalt des Arrays auf den Bildschirm aus.

- Quelle http://www.highscore.de

Ich habe bis jetzt folgendes (anstatt short hab ich integer benutzt)


C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
#include<iostream>

using namespace std;

struct Elemente_array
{
  int Anzahl ;
};

int main()
{
  int i ;
  cout<<"Aus wieviel Elementen soll das Array bestehen ?\n";
  cin>>i;

  Elemente_array* Elemente = new Elemente_array[i];

  for(int j=0;j<i;++j)
  {
    if(j%2==0)
    {
      Elemente[j].Anzahl = 0;
    }
    else
    {
      Elemente[j].Anzahl = 1
    }
  }
  for(int j=0;j<i;++j)
  {
    cout<<&Elemente[j]<<" ";
  }
  delete[] Elemente;
  cin.get();
}


Das einzige Problem was ich jetzt noch habe ist, dass ich das Array nicht ausgeben kann. Bis jetzt habe ich es nur geschafft die Positionsnummer im Speicher auszugeben mit &.
Was mach ich falsch ?

Mfg,

GericasS


Bergmann89 - Mi 09.06.10 19:33

Hey,

entweder übergibst du dem cout auch deine Anzahl (weil mit deinem Typ kann er nix anfangen): cout << Elemente[j].Anzahl << " "; Oder du nimmst ein Array aus Integer-Werten: int* Elemente = new int[i] dann kannst du die Ausgabe so lassen. Außerdem kann ich dir printf [http://www.cplusplus.com/reference/clibrary/cstdio/printf/] ans Herz legen, damit kann man die Ausgabe auch schon formatieren...

MfG Bergmann


GericasS - Mi 09.06.10 19:42

Hey Bergmann,

ich hab dem cout auch die Anzahl übergeben funktionert alles 1A jetzt. Vielen Danke für die schnelle Hilfe.
Ich werde mir printf gleich mal ansehen ;)

Mfg,

GericasS


Bergmann89 - Mi 09.06.10 19:45

Kein Problem, wenn du dein struct aber nich noch mit anderen Werten erweitern willst würd ich dir trotzdem zu einem Integer_Array raten.

MfG Bergmann