Array

Hallo,

kann mir einer kurz erklären, wann ein Array eingesetzt wird und was es ist.

Danke im voraus.

Pet

Hi!
Ein Array ist ein „Datenbehälter“, also eine Art von Variablen, die mehrere Werte beinhaltet.

Arrays kann man fast überall einsetzen, wo man mehr als einen „Datensatz“ speichern muss. Zum Beispiel kannst Du bei einer Temperaturmessung alle Werte in einem array ablegen und diese dann alle miteinander Verarbeiten:

int temp[30]; //Array mit 30 Zahlen
temp[0] = 1;
temp[1] = 2;
temp[2] = 100;

for (int i=0;i[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Array heiß „Feld“.

Wenn du dir eine Variable als eine Schublade vorstellst, dann ist ein Array ein Schrank mit vielen gleichen Schubladen. Der Schrank hat dann einen Namen und jede Schublade davon ihren Index, über den man sie ansprechen kann. So ein Schrank kann auch mehrere „Reihen“ Schubladen haben, so daß man eine Schublade über ihre Reihe und Spalte ansprechen kann. In der theoretischen Welt der Computer sind natürlich mehr „Dimensionen“ möglich, also 3- 4- usw. dimensionale Arrays.

Tschö

Jochen

Hi,

kann mir einer kurz erklären, wann ein
Array eingesetzt wird und was es ist.

Den Ausfuehrungen meiner Vorredner moechte ich noch hinzufuegen, dass die Verwendung von Arrays eine der zahlreichen „low-level-operationen“ von C ist, da Du Dich direkt im Speicher bewegst. Die meisten (oder sehr viele) Abstuerze von Programmen werden durch „segmentation faults“ (Speicherschutzverletzung) ausgeloest, und die meisten Segmentation faults entstehen durch Fehler bei der Verwendung von Arrays (das sind keine Fehler, die sich so einfach vermeiden lassen, man kann bei Vorgaengen, die nicht sehr einfach sind kaum den Ueberblick behalten und uebersieht immer wieder ewas). Auch schwer zu findende Fehler koennen durch Arrays hervorgerufen werden, wenn z.B. der Stack einer Funktion (besonderer Speicherbereich) durcheinandergebracht wird, ohne dass man es merkt. Solltest Du C++ verwenden und nicht sehr zeitkritische Berechnungen durchfuehren, ist dem spezialisierten Container „vector“ unbedingt der Vorzug zu geben (spezielle Klasse der C++ Standard-Bibliothek)! Zeichenketten werden in C in char-arrays (sogenannten strings) gespeichert. Hierfuer bietet C++ ebenfalls eine spezialisierte Standard-Klasse namens string. Diese erlaubt ueber sicheren Speicherzugriff hinaus zahlreiche wichtige string-operationen wie vortgeschrittene Suchtechniken, Ersetzungen usw.
Auch viele andere Fallen aus C lassen sich in C++ oft umgehen (Pointer, Makros, globale Variablen usw usw …).

Gruss

Thorsten