Scheiß Dynamik ;-)



  • Moin Moin !!!

    Ich bin mal wieder mit meinen dynamischen Arrays überfordert.
    Kann eigentlich nur was Kleines sein, denn prinzipiell müsste es so funktionieren, jedoch bekomme ich sofort einen sequmentation fault.

    Ich will ein Array anlegen, bei dem die ersten beiden Dimensionen Statisch und die zwei Weiteren dynamisch sind.

    unsigned int **iMap[4][2];
    int iPix[2];
    iPix[0] = 1024;
    iPix[1] = 786;
    
    for (int i=0;i<4;i++)
    {
    	for (int j=0;j<2;j++)
    	{
    			*iMap[i][j] = new unsigned int[iPix[0]];
    
    			for (int k=0;k<(iPix[0]);k++)
    			{
    				cerr << "test" << endl;
    				iMap[i][j][k]=new unsigned int[iPix[1]];
    			}
    
    	}
    }
    

    Bin für nen kleinen Tipp sehr dankbar,

    Lutz



  • SecretAgentMan schrieb:

    *iMap[i][j] = new unsigned int[iPix[0]];
    

    Der * ist an der falschen Stelle.



  • Und wo muß es hin ??



  • SecretAgentMan schrieb:

    Und wo muß es hin ??

    Ich dachte, du wolltest nur einen kleinen Tipp. So viele Möglichkeiten gibt's da nicht, und notfalls kann man es immer noch mit Denken versuchen. 😉



  • Ach ja, scheiße hab ich doch auch schomal vor vielen Wochen gemacht.
    Aber nicht nur das Sternchen war das Problem,

    sonder auch:

    int [bla] und NICHT: int[bla].

    desshalb hat das Sternchen an einer anderen Stelle auch erstmal nicht funktioniert und ich hab nochmal nachgefragt.

    Für alle die diesen Beitrag irgendwann zufällig mal durch die Suchfunktion finden hier die richtige Zeile:

    iMap[i][j] = new unsigned int* [iPix[0]];
    

    Danke !


Anmelden zum Antworten