Arraygröße festlegen
-
Wie kann ich einen Array variable festlegen. Ich will beim Start des Programmes die Anzahl der Parameter abfragen und dann Anhand der Eingabe den Array definieren....
also so:
int iArray = 10; //Dieser wird wird bei Programmstart festgelegt double Test[iArray]; //Testroutine for (int i=0;i<iArray;i++) { Test[i] = i; }
[ Dieser Beitrag wurde am 01.04.2003 um 14:35 Uhr von AnTri editiert. ]
-
mit malloc oder new.
-
AnTri:
Ich weiß zwar nicht, was das mit WinAPI zu tun hat, aber dein Code stimmt so weit bereits.
-
Nein, der stimmt nicht:
bei Zeile:
double Test[iArray];
error C2057: Konstanter Ausdruck wird erwartet....
-
Der Code stimmt eben nicht.
Bei einem Array muss die Größe schon zur Compilezeit bekannt sein.Ein Ausweg ist dynamische Speicherplatzanforderund mit new;
int iArray = 10;
double *p_Test = new double[iArray];
...
delete p_Text;
-
Dann besorgt euch mal nen aktuellen Compiler. Das ist seit 1999 Standard (C99).
-
Also, ich benutze den von .Net und da geht es nicht! (Das gleiche auch bei VC++ 6)
-
@Georg
Falsch, ein Array muss mit delete[] gelöscht werden.