Salve a tutti,ritorno,dopo tempo,a scrivere in c++ e sono un pochino arruginito riguardo il passaggio di una matrice a un sottoprogramma. Allora io nel main dichiaro la mia matrice di dimensioni d,decise dall'utente.Quindi scriverò int m[d][d]; in modo da creare la mia matrice. Il problema sorge quando voglio passare per valore la matrice al sottoprogramma. Come devo scrivere i parametri. Con i puntatori è semplice,basta fare (int *m,int d) e sto tranquillo.Ma se non volessi usare i puntatori come potrei fare? Magari se potete allegare un esempio con la lettura di una matrice,così risolviamo subito. Grazie a tutti della disponibilità
void mostra_matrice(int v[20][20], int rig, int col)
{
for(int i = 0; i < rig; i++)
{
std::cout << std::endl;
for(int j = 0; j < col; j++)
{
std::cout << v[i][j] << " \t ";
}
}
}
Super Squirrel ha scritto:per quanto riguarda l'allocazione dinamica dell'array , se indispensabile, potresti usare la classe vector
std::array<std::array<int, d>, d> m;
std::array<int, d*d> m;
Visitano il forum: Nessuno e 1 ospite