Hallo Gemeinde,
ich moechte eine Funktion aufrufen (aus main) die Speicher allokiert.
Wie ihr seht, hat diese Funktion zwei Parameter
1. int - Groesse des zu allokierenden Speichers
2. typenlosen pointer
In main() soll dann ein byte allokiert werden und mit einem charakter befuellt werden. Meiner Meinung nach tut es das auch, oder? ;-)
Die Ausgabe klappt zumindest soweit.
Wie kann ich denn den Wert des Pointers in main() nochmal ausgeben?!
Achso, der Code:
ich moechte eine Funktion aufrufen (aus main) die Speicher allokiert.
Wie ihr seht, hat diese Funktion zwei Parameter
1. int - Groesse des zu allokierenden Speichers
2. typenlosen pointer
In main() soll dann ein byte allokiert werden und mit einem charakter befuellt werden. Meiner Meinung nach tut es das auch, oder? ;-)
Die Ausgabe klappt zumindest soweit.
Wie kann ich denn den Wert des Pointers in main() nochmal ausgeben?!
Achso, der Code:
Code:
#include <stdio.h> #include <stdlib.h> int allokiere(int laenge, void *zeiger) { zeiger = (void *)malloc(laenge); if( zeiger != NULL) { printf("Allozierung war erfolgreich\n"); char *zeiger = "f"; printf("%s\n", zeiger); } else { printf("Aetsch, hier ging was schief\n"); } return 0; } void main() { void *Name; allokiere(1, Name); getchar(); }
Kommentar