Laden...

Logische/Physische Länge eines C#-Array

Erstellt von B3nj vor 13 Jahren Letzter Beitrag vor 13 Jahren 1.204 Views
Thema geschlossen
B3nj Themenstarter:in
242 Beiträge seit 2006
vor 13 Jahren
Logische/Physische Länge eines C#-Array

Hallo,

Letztens bin ich auf die Begriffe logische und physische Länge eines Arrays gestossen. Explizit auf C# .Net bezogen.

Die physische Arraylänge wird wohl die "Länge" des Arrays sein (.Length). Wie aber ist die logische definiert?

Eigentlich dachte ich, dass die logische Länge eines Arrays = die physische Länge ist (zumindest in C#). Jetzt aber habe ich gehört, dass die logische Länge die Anzahl der explizit definierten indizes ist. Das macht für mich in C oder ähnlichen Sprachen irgendwo noch Sinn, da hier die Werte in einem Array ja nicht vordefiniert sind, in C# jedoch schon (imho default(T)).

=)Google sagt dazu auch nicht viel, daher wende ich mich mal an euch.

mfG

Gelöschter Account
vor 13 Jahren

Sowas findet man bei List und Arraylist z.B.
Da ist das innerArray meist länger als List.Count

C
252 Beiträge seit 2007
vor 13 Jahren

Klingt für mich nach einem Crosspost.
Naja jedenfalls hast du in diesem Thread bereits die Antwort.

5.657 Beiträge seit 2006
vor 13 Jahren

Was JAck30lena sagt, trifft ja nur auf Listen zu, die Länge des internen Arrays wäre dann im Capacity-Property auszulesen. Aber der OP spricht ja explizit von Arrays.

Was wäre denn logische und phyische Länge? Meiner Meinung nach ist die logische Länge die Anzahl der Einträge und die physische die Anzahl der Einträge mal der Größe jeden Eintrages. Also z.B. bei 30 Integer-Werte wäre die logische Länge 30, aber die physische 30 * 32 Bit = 120 Byte. Ist es das , was du gemeint hast?

Weeks of programming can save you hours of planning

B3nj Themenstarter:in
242 Beiträge seit 2006
vor 13 Jahren

Zum Crosspost: Der ist atsächlich von mir. Die Frage ist sehr speziell deshalb habe ich an zwei Stellen gefragt. Kann man mir übel nehmen und ist wie ich gerade gesehen habe auch nicht erlaubt. Ok, das ist mein Fehler.

Das mit den Listen ist auch gut zu wissen, aber ich habe auf Arrays abgezielt ja.

@MrSparkle:
Deine Erklärung ist schon mal gut. Naja, grundsätzlich geht es um (m)einen Lehrer der der Meinung ist, dass die physische Länge des Arrays entspricht und die logische der Anzahl an Feldern die exlizit zugewiesen wurden. Da habe ich ihm widersprochen und das hat ihm überhaupt (!) nicht gefallen.

Aber das klingt schonmal gut. Damit lässt sich argumentieren:-) Weil die Erklärung des Lehrers will mir einfach nicht in den Kopf. (Hinterfragen sollte ja nicht schlimm sein^^)

Hinweis von herbivore vor 13 Jahren

Zum Crosspost: ... ist wie ich gerade gesehen habe auch nicht erlaubt.

So ist es ==> geschlossen.

BTW: Die Frage ist weder speziell noch ist eine Antwort darauf unwahrscheinlich, wie man schon daran sieht, dass es in beiden Threads innerhalb von Minuten Antworten gab. Solche unnötigen Crossposts sind besondere ärgerlich.

Thema geschlossen