Wie erstellt man ein Array in C, dessen Größe vom Nutzer bestimmt wird?

Antwort

Um in C ein Array zu erstellen, dessen Größe zur Laufzeit vom Benutzer bestimmt wird, kannst du dynamische Speicherverwaltung mit `malloc` verwenden. Hier ist ein einfaches Beispiel: ```c #include <stdio.h> #include <stdlib.h> int main() { int n; printf("Gib die Größe des Arrays ein: "); scanf("%d", &n); // Dynamische Speicherzuweisung für das Array int *array = (int *)malloc(n * sizeof(int)); if (array == NULL) { printf("Speicherzuweisung fehlgeschlagen\n"); return 1; } // Array initialisieren und ausgeben for (int i = 0; i < n; i++) { array[i] = i + 1; printf("%d ", array[i]); } printf("\n"); // Speicher freigeben free(array); return 0; } ``` In diesem Beispiel wird die Größe des Arrays vom Benutzer eingegeben und dann mit `malloc` Speicher für das Array zugewiesen. Nach der Verwendung des Arrays wird der Speicher mit `free` wieder freigegeben.

KI fragen

Verwandte Fragen

Kann man in VB.NET 2003 eine Zeile eines Arrays mit z.B. 10 Zeilen und 5 Spalten genauso klonen wie ein ListViewItem mit seinen SubItems?

In VB.NET 2003 kannst du eine Zeile eines zweidimensionalen Arrays nicht direkt mit einer eingebauten Methode wie `Clone` kopieren, wie es etwa bei einem `ListViewItem` mit seinen SubItems möglic... [mehr]

Funktioniert in VB.NET 2003: Dim arr0(3) As Integer, arr1() As Integer = {1, 2, 3}; arr1.CopyTo(arr0, 3); MsgBox(arr0(2).ToString) zeigt '3'?

Dein Code in VB.NET 2003 funktioniert so nicht wie beschrieben. Hier die wichtigsten Punkte dazu: 1. **Array-Deklaration und Initialisierung** ```vb.net Dim arr0(3) As Integer Dim arr1() A... [mehr]

Wie kann man in VB.NET 2003 ein Array mit mehreren Werten initialisieren?

In VB.NET 2003 kannst du ein Array wie folgt mit Werten initialisieren: ```vb Dim arr(5) As Integer arr(0) = 1 arr(1) = 2 arr(2) = 3 arr(3) = 4 arr(4) = 5 arr(5) = 6 ``` Oder direkt bei der Deklarat... [mehr]

Wie kann man in VB.NET 2003 die Reihenfolge einer Zeichenkette oder eines Arrays umkehren?

Ja, in VB.NET 2003 kannst du sowohl Zeichenketten als auch Arrays mit einfachen Mitteln umkehren, auch wenn es noch keine eingebauten Methoden wie `Array.Reverse` für Zeichenketten gibt. Hier sin... [mehr]