Mehrdimentsionale Felder?

Hi!

Ich habe mal ein paar Fragen

  • wie definiere ich z.b. so ein feld: Eindimensionales Array mit 11 Arrays mit 5 Zahlen

oder wie definiere ich ein feld mit 4 zeilen und 5 spalten für z.b. telefonnummern?

weiterhin interessiert mich, wieviel speicherplatz so ein feld verbraucht (eine integer braucht 2 byte, oder?):
VAR wuerfel : array [1…200,1…50,1…30] of Integer

Danke für deine Hilfe

Hallo Danny,

  • wie definiere ich z.b. so ein feld: Eindimensionales Array
    mit 11 Arrays mit 5 Zahlen

type
Tfeld1 = array [1…11,1…5] of integer;
Tfeld2 = array [0…10,0…4] of wasauchimmer;

oder wie definiere ich ein feld mit 4 zeilen und 5 spalten für
z.b. telefonnummern?

type
TTelefonnummerString = string[32];
TTelefonNummerArray = array[0…31] of char;
TTelefonDatei = array [0…3,0…4] of siehezuvor;

weiterhin interessiert mich, wieviel speicherplatz so ein feld
verbraucht (eine integer braucht 2 byte, oder?):
VAR wuerfel : array [1…200,1…50,1…30] of Integer

Schau in der Dokumentation nach, normalerweise sind integer systemabhängig, bei 32bit-Windows 4 Byte; 2 Byte sind smallint.
Dein Array ist 201 x 51 x 31 Elemente gross - Absicht?

Gruss Reinhard

hallo,

weiterhin interessiert mich, wieviel speicherplatz so ein feld
verbraucht (eine integer braucht 2 byte, oder?):
VAR wuerfel : array [1…200,1…50,1…30] of Integer

die größe von integer kriegst du über die online-hilfe raus. dabei gilt aber zu beachten: die größe von „Integer“ ist compiler-abhängig. verwendest du den (aktuellen) 32bit-compiler, so sind es 4 byte. allerdings kann sich das evtl. zukünftig ändern… benötigst du wirklich *genau* 32bit, so solltest du LongInt nehmen. dieser ermöglicht allerdings evtl. nicht die optimale ausführungsgeschwindigkeit.

um zur laufzeit die größe deines würfels rauszubekommen kannst du die funktion Size() nutzen:

ShowMessage(IntToStr(wuerfel));

die größe berechnet sich dabei natürlich so: 200 * 50 * 30 * 4 Byte = 1200000 Byte ~ 1,15 MB

Reinhard:

Dein Array ist 201 x 51 x 31 Elemente gross - Absicht?

da hast du dich wohl einfach verzählt, oder? :wink:

mfg, micha