Adresse von einer Variable in ein Array schreiben



  • Hallo,

    ich möchte die Adresse der var1 in arr[0] hineinschreiben, Wie könnte ich das machen bzw. geht das überhaupt?

    Vielen Dank,
    lg

    #include <stdlib.h>
    #include <stdio.h>
    
    int main(void)
    {
    	int var1;
    	int arr[20];
    	arr[0] = &var1;    // so funktionierts nicht, da arr[0] ein int ist
    
    	printf("Adresse var1 %p und die Adresse von arr[0]: %p ", var1, &arr[0]);
    return 0;
    }
    


  • Du brauchst ein Array aus int-Zeigern:

    int var1;
    int* arr[20];
    arr[0] = &var1;
    

    Uebrigens sollte dein urspruenglicher Code (IIRC) nur eine Warnung ausgeben, keinen Fehler. Bist du sicher dass du einen C-Compiler und keinen C++-Compiler aufrufst?



  • DA bin ich nicht sicher, ich arbeite mit Microsoft Visual C++, da wird wohl der gcc dahinterstecken,

    Vielen Dank für die Antwort,

    lg



  • PollerCPP schrieb:

    DA bin ich nicht sicher, ich arbeite mit Microsoft Visual C++, da wird wohl der gcc dahinterstecken,

    Vielen Dank für die Antwort,

    lg

    gcc hinter MS Visual C++? Das bezweifl ich. Und die meisten IDE kompilieren C++, wenn sie mit .cpp Datein gefüttert werden. Guck mal, ob deine Datei die Endung .cpp oder .c hat. 🕶


Anmelden zum Antworten