c-uebungen/Assignment_018/readme.md

37 lines
1.7 KiB
Markdown
Raw Permalink Normal View History

2023-05-21 21:10:46 +02:00
# Dynamische Speicherverwaltung mit malloc und free
📆 **Fällig: ----** 📆 [Musterlösung](solution/)
Schreiben Sie ein C-Programm, das die Funktionen `malloc` und `free` zur dynamischen Speicherallokation und -freigabe verwendet. Das Programm soll ein dynamisches Array von ganzen Zahlen erstellen.
Schreiben Sie eine Funktion namens `create_array`, die einen Parameter erhält, der die Größe des Arrays angibt. Die Funktion soll dynamisch Speicher für das Array reservieren und die Adresse des reservierten Speichers zurückgeben.
Schreiben Sie eine Funktion namens `print_array`, die Elemente des Arrays auf der Konsole ausgibt.
Schreiben Sie eine Funktion namens `free_array`, welche den Speicher freigibt, der für das Array reserviert wurde.
In der `main`-Funktion soll die Funktion `create_array` aufgerufen werden, um ein dynamisches Array mit einer vom Benutzer eingegebenen Größe zu erstellen. Anschließend sollen einige Beispieldaten abgefragt und in das Array geschrieben werden. Die Funktion `print_array` soll aufgerufen werden, um die Elemente des Arrays anzuzeigen. Zum Schluss soll die Funktion `free_array` aufgerufen werden, um den reservierten Speicher freizugeben.
Eine beispielhafter Programmablauf könnte wie folgt aussehen:
```console
Geben Sie die Größe des Arrays ein: 4
Geben Sie die Elemente des Arrays ein:
Element 0: 10
Element 1: 11
Element 2: 12
Element 3: 13
Das Array enthält folgende Elemente:
Element 0: 10
Element 1: 11
Element 2: 12
Element 3: 13
```
## Quellen
2023-05-21 21:12:08 +02:00
* [Skript](https://smits-net.de/files/c/html/) zur Vorlesung
2023-05-21 21:10:46 +02:00
* [C-Tutorial](https://www.learn-c.org/)
* [C von A bis Z](https://openbook.rheinwerk-verlag.de/c_von_a_bis_z/)