Ciao,
il tutto riguarda il C.
Dato un array pippo[6][6], che passa in un certo controllo devo assegnare ad esempio a nuovo_pippo[n] = pippo[n], cioe' tutto il vettore legato al primo indice!
Ma le sto provando di tutti i colori, ma non ho capito dove svaglio.
Se non sbaglio scrivendo pippo[n] mi da l'indirizzo di quel elemento che coincide con il primo elemento pippo[n][0], ma se provo ad essegnarlo a nuovo_pippo mi va in crisi, ho provato ad usare tutti gli operatori *, & ma niente.
Dove sbaglio?
Ah vi ricordi il tutto fa parte di una struct cosi definita:
codice:
typedef struct {
int nrighe;
int ncolonne;
int cella[10][10];
} matrice;
E la funzione (ricorsiva... almeno spero) che dovrebbe fare questa cosa e:
codice:
/*Funzione ricorsiva per eliminare una riga */
matrice delRow(matrice m, int dR_row, int dR_dim, int dR_dim1) {
//Variabili
matrice newM;
// Caso base
if (dR_dim < 0) {
newM.nrighe = m.nrighe - 1;
newM.ncolonne = m.ncolonne;
return newM;
}
if (dR_dim != dR_row) {
//Prima della riga da eliminare
newM.cella[dR_dim1] = m.cella[dR_dim];
return delRow(m, dR_rom-1, dR_row1-1);
}
if (dR_dim == dR_row) {
newM.cella[dR_dim1] = m.cella[dR_dim];
return delRow(m, dR_dim-1, dR_dim);
}
} //End delRom
La func. dovrebbe eliminare una riga di una matrice.... qualcola la elimina, ma non so che dato che poi i dati che mi ristituisce so tutti u uguali e non centrano una mazza con quelli inseriti da me!
dove sbaglio?