malloc Funktion


malloc (Speicherallokierung) wird verwendet, um dynamisch (h.h. zur Programmlaufzeit) Speicherplatz zur Verfügung zu stellen. Mögliche Anwendungsfälle sind:

Eine einfache Variante zum Reservieren von Speicherplatz könnte so aussehen. Beachten Sie, daß die Reservierung statisch (d.h. zur Compilezeit) erfolgt:

	main()
        {
          char string[1000];

	  strcpy (string, "Some text");
        }

Diese Variante hat Nachteile:

malloc ermöglicht es, eine variable Menge an Speicherplatz zu binden.   Mit der Funktion  free kann der Speicherplatz jederzeit wieder freigegeben werden..


	Library:   stdlib.h

	Prototype: void *malloc(size_t size);

	Syntax:    char * String;

                   String = (char *) malloc(1000);

Im Beispiel oben werden 1000 Bytes reserviert. Der Zeiger String zeigt auf das erste Byte. Die 1000 Bytes werden nicht initialisiert. Wenn kein Speicherplatz vorhanden ist, wird der  NULL -Zeiger zurückgeliefert. Beachten sie, daß man einen  cast -Operator verwenden muß, um einen Zeiger auf einen bestimmten Datentyp zu erhalten, malloc liefert einen Zeiger auf void.

Beispiele:

Beispielprogramm


Siehe auch:

char Datentyp.

free Funktion.

sizeof Operator.


C++

new ist das C++ Äquivalent zu malloc.

delete ist das C++ Äquivalent zu free.


Anfang Hauptindex Schlüsselwörter Funktionen

Übers.: G. Junghanns