codice:
int main(int argc, char *argv[])
{
const size_x = 7;
const size_y = 7;
float **A = new float*[size_y];
// Alloca tutti i dati in maniera *sequenziale*
float *matrice = new float[size_y*size_x];
// Assegna i doppi puntatori ad ogni 'riga'
for(int i=0; i<size_y; i++)
A[i] = &matrice[i*size_y];
// Matrice temporanea, solo per l'assegnazione dei valori
float data[size_y][size_x] =
{
{0.,1.,0.,0.,0.,0.,0.} //riga1
, {7.,0.,7.,0.,0.,0.,7.} //riga2
, {0.,0.,0.,1.,0.,0.,0.} //riga3
, {7.,0.,7.,0.,7.,0.,7.} //riga4
, {0.,0.,0.,0.,0.,1.,0.} //riga5
, {0.,0.,7.,0.,7.,0.,7.} //riga6
, {0.,0.,0.,0.,0.,0.,0.} //riga7
};
for( int i=0; i<size_y*size_x; i++)
matrice[i] = data[0][i];
for(int y=0; y<size_y; y++)
{
for(int x=0; x<size_x; x++)
cout<<"A["<<y<<"]["<<x<<"]="<<A[y][x]<<", ";
cout<<"\n";
}
cout<<"\nTerminato.";
cin.get();
return EXIT_SUCCESS;
}