pfrei
23-05-2005, 14:54
Hallo zusammen!
In meinem Programm lese ich Daten, die einem bestimmten Kriterium (RC_NOTFOUND )entsprechen, per Loop ein:
if (log_rec.resp_code==RC_NOTFOUND)
{
strncpy(respnotfound[y].respurl,log_rec.url,strlen(log_rec.url));
y+=1;
}
Die Variablen sind wie folgt deklariert:
struct response_url { char respurl[MAXURL]; };
struct response_url respnotfound[5000];
struct log_struct { char url[MAXURL]; }
struct log_struct log_rec;
Nun das Problem: Wenn der Rechner mehr als 5000 Daten in die Variable "respnotfound" einleist, wird es vmtl. ein Problem geben... Den Array auf 100000 anzupassen, scheint mir auch keine gute Lösung zu sein, da das sonst einfach zuviel Speicher reserviert!
Gibt es eine Möglichkeit, dieses Array so zu deklarieren, dass man die Grösse des Arrays nicht angeben muss? (struct response_url respnotfound[]; hat leider nicht funktioniert...)
Danke für Eure Hilfe!
Patrick
In meinem Programm lese ich Daten, die einem bestimmten Kriterium (RC_NOTFOUND )entsprechen, per Loop ein:
if (log_rec.resp_code==RC_NOTFOUND)
{
strncpy(respnotfound[y].respurl,log_rec.url,strlen(log_rec.url));
y+=1;
}
Die Variablen sind wie folgt deklariert:
struct response_url { char respurl[MAXURL]; };
struct response_url respnotfound[5000];
struct log_struct { char url[MAXURL]; }
struct log_struct log_rec;
Nun das Problem: Wenn der Rechner mehr als 5000 Daten in die Variable "respnotfound" einleist, wird es vmtl. ein Problem geben... Den Array auf 100000 anzupassen, scheint mir auch keine gute Lösung zu sein, da das sonst einfach zuviel Speicher reserviert!
Gibt es eine Möglichkeit, dieses Array so zu deklarieren, dass man die Grösse des Arrays nicht angeben muss? (struct response_url respnotfound[]; hat leider nicht funktioniert...)
Danke für Eure Hilfe!
Patrick