C-Kurs/Arrayuebergabe
< C-Kurs
Version vom 15. September 2009, 10:02 Uhr von 85.178.222.74 (Diskussion)
Aufgabenstellung
Schreibe ein Programm, das per Konsolenparameter die Größe eines Arrays für Integer-Werte angegeben bekommt. Das Programm soll anschließend Speicher auf dem Heap allozieren und diesen als Array verwenden, um Integer-Werte zu speichern. In diesem Array soll anschließend der größte Wert gefunden und angezeigt werden.
Vorgehensweise
- Lese das erste Kommandozeilenargument und alloziere einen entsprechend Großen Buffer
- Achte dabei möglichst auf Fehlerbehandlung bei falschen Größen
- Lese n Integer-Werte von der Standardeingabe und speicher diese im vorher allozierten Buffer
- Übergebe das Array an eine Funktion find_max, die den größten Wert zurückgeben soll
- Suche den maximalen Wert mit Pointerarithmetik (keine direkte Indexaddressierung bei Vergleichen)
Achtung: Sinn der Aufgabe ist das Verinnerlichen von Pointern, ihr könnt in C nicht wie in anderen Sprachen einfach ein Array als Argument übergeben, stattdessen müsst ihr auf Pointer zurückgreifen.