wie groß darf eine Array sein?
-
camper schrieb:
[cpp]double (*pStack)[500]
nice
-
fricky schrieb:
camper schrieb:
[cpp]double (*pStack)[500]
nice
womit hast du es compiliert ?
nice, wenn es der compiler frisst.C:\Programme\PellesC\Projects\test\test.c(6): error #2001: Syntax error; found 'double' expecting '{'.
-
Kommando zurück!
Der Fehler war meinerseits und liegt woanders!
-
davon abgesehen:
double *pStack[500]
hier hab ich ein zeiger array, was ist wenn das zeiger array
100000000 groß ist.. dann ist der stack wieder zu voll;)
dann lieber so
double **pDimX= malloc(500*sizeof(*double)); for(int y=0; <500; ++y) pDimX[y]= malloc(500*sizeof(double);
sicher paar synax fehler drin^^
-
Nein, dann lieber die lineare Variante und die Indizierung mit pStack[x*500+y];
Dann sparst du ganz viele Zeiger und RAM
-
wieso? statt 1.000.000 Bytes hast halt 1.002.000 Bytes^^
-
BorisDieKlinge schrieb:
davon abgesehen:
double *pStack[500]
hier hab ich ein zeiger array, was ist wenn das zeiger array
100000000 groß ist.. dann ist der stack wieder zu voll;)deswegen benutzen wird auch nur einen zeiger: *double (pStack)[500];
-
BorisDieKlinge schrieb:
...
hier hab ich ein zeiger array, was ist wenn das zeiger array
100000000 groß ist.. dann ist der stack wieder zu voll;)
dann lieber so ...NÖ, dann hast du 100000000 * sizeof ( double* ) Bytes zuviel.
Macht Summa Summarum 400000000 Bytes. In Worten: vierhundert millionen. Das ist fast ein halbes, verschwendetes Gigabyte.
-
[quote="Der Linearisierer
NÖ, dann hast du 100000000 * sizeof ( double* ) Bytes zuviel.
Macht Summa Summarum 400000000 Bytes. In Worten: vierhundert millionen. Das ist fast ein halbes, verschwendetes Gigabyte.[/quote]Sorry! Ich habe wohl ganz schön Quatsch geschrieben gerade. Da muss ich noch mal überlegen!
Gruß
D.L.
-
Der Linearisierer schrieb:
Sorry! Ich habe wohl ganz schön Quatsch geschrieben gerade. Da muss ich noch mal überlegen!
Gruß
D.L.Nein. Kein Quatsch. So ist das.