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.

Frage stellen und sofort Antwort erhalten

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]

Sortiere 45, 23, 7, 900, 53, 65, 12, 78, 35 mit Selection Sort bis zu 7, 12, 23, 35, 45, 65, 78, 900.

Selection Sort funktioniert, indem das kleinste Element aus dem unsortierten Teil des Arrays ausgewählt und an den Anfang des Arrays verschoben wird. Hier ist eine Schritt-für-Schritt-Dar de... [mehr]

Wie multipliziere ich alle Einträge eines Datentyps std::vector<std::array<double, 3>> mit 0,5?

Um alle Einträge eines Datentyps `std::vector<std::array<double, 3>>` mit 0,5 zu multiplizieren, kannst du eine Schleife verwenden, um durch den Vektor zu iterieren und jeden Wert im... [mehr]

Wie konvertiere ich ein String-Array in eine Liste vom Typ String?

Um ein String-Array in eine Liste vom Typ String zu konvertieren, kannst du in C# die Methode `ToList()` aus dem Namespace `System.Linq` verwenden. Hier ist ein einfaches Beispiel: ```csharp using Sy... [mehr]

Wie dreht man die Reihenfolge der Zahlen in einem Array um, ohne Array.Reverse und ohne new int?

Um die Reihenfolge der Zahlen in einem Array in C# umzukehren, ohne `Array.Reverse` oder ein neues Array zu verwenden, kannst du eine einfache Schleife verwenden, um die Elemente des Arrays zu vertaus... [mehr]

In C# wie dreht man die Reihenfolge der Zahlen im Array um ohne Array.Reverse?

Um die Reihenfolge der Zahlen in einem Array in C# umzukehren, ohne die Methode `Array.Reverse` zu verwenden, kannst du eine einfache Schleife nutzen. Hier ist ein Beispiel, wie du das machen kannst:... [mehr]