mehrdimensionales Array

  • hi
    Hab ein Problem mein mehrdimensionales Array in einer Funktion zurückzugeben:
    int* funktion(){
    int i;
    scanf("%d",&i);
    int (*p)[3] = new int[i][3]; //Zeiger auf ein zweidimensionales Array
    return p[3];
    }
    void main()
    {
    int (*p)[3]=
    funktion();
    }
    Es kommt folgender Fehler:
    "error C2440: 'Initialisierung' : 'int *' kann nicht in 'int (*)[3]' konvertiert werden
    Die Typen, auf die verwiesen wird, sind nicht verknüpft; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat"
    Ich weiß nur, dass die Alloziierung des Array mit new stimmt.
    Alles andere ist probiert.
    Hoffe es kann mir jemand helfen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!