Sto cercando di capire quale "buona pratica" (o qualsiasi altra pratica) è per passare un array multidimensionale a una funzione in c. Certamente questo dipende dall'applicazione, quindi consideriamo la possibilità di scrivere una funzione per stampare un array 2D di dimensioni variabili. In particolare, mi interessa sapere come scrivere la funzione printArry(__, int a, int b)
nel seguente codice. Ho omesso il primo parametro perché non sono esattamente sicuro di ciò che dovrebbe essere.Passaggio di un array multidimensionale di dimensioni variabili
void printArry(_____, int a, int b){
/* what goes here? */
}
int main(int argc, char** argv){
int a1=5;
int b1=6;
int a2=7;
int a2=8;
int arry1[a1][b1];
int arry2[a2][b2];
/* set values in arrays */
printArry(arry1, a1, b1);
printArry(arry2, a2, b2);
}
ho postato un follow-up a: http://stackoverflow.com/questions/34560001/passing -a-multidimensionale-array-of-variable-size-without-vla – ABD