PDA

Ver la versión completa : Problema con arrays multidimensionales en c



Marquitos07
06/10/2009, 13:41
Miren yo tengo q usar un array multidimensional como parametro de una funcion....y bueno a diferencia de uno unidimensional q solo lo podes manejar:

void func (int v[]);

int main()
{
int v[10];
.........
func(v);
}

void func (int v[])
{
.......
}

Los multidimensionales no c bien como manejarlos entonces agradezco ayuda xDD

GoD
06/10/2009, 14:06
Lee el siguiente artículo que está clarísimo:

http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/2007-May/001674.html


Consejo: "El google puede salvar tu vida."

Saludos!

vofijatee
06/10/2009, 14:54
#include <stdio.h>

void printArray(int array[][4]); /* declare function */

int main() {
int array[3][4] = {0,1,2,3,4,5,6,7,8,9,10,11};
printArray(array);
return 0;
}

void printArray(int array[][4]) { /* define function */
int i, j;

for(i=0 ; i<3 ; i++) {
for(j=0 ; j<4 ; j++) {
printf("%2d ", array[i][j]);
}
printf("\n");
}
}




Source:

http://irc.essex.ac.uk/www.iota-six.co.uk/c/f3_passing_arrays_to_functions.asp

Marquitos07
06/10/2009, 15:10
Lee el siguiente artículo que está clarísimo:

http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/2007-May/001674.html


Consejo: "El google puede salvar tu vida."

Saludos!

Ya lei eso, ya busque en google, pero x ejemplo ese no lo termino de entender, xq no explica como c lo usa en la funcion fuera del main, y otros ejemplos q encontre no me funcaban en el compilador q uso >.>

Marquitos07
06/10/2009, 15:12
#include <stdio.h>

void printArray(int array[][4]); /* declare function */

int main() {
int array[3][4] = {0,1,2,3,4,5,6,7,8,9,10,11};
printArray(array);
return 0;
}

void printArray(int array[][4]) { /* define function */
int i, j;

for(i=0 ; i<3 ; i++) {
for(j=0 ; j<4 ; j++) {
printf("%2d ", array[i][j]);
}
printf("\n");
}
}




Source:

http://irc.essex.ac.uk/www.iota-six.co.uk/c/f3_passing_arrays_to_functions.asp

Graxie :D

Marquitos07
06/10/2009, 16:47
#include <stdio.h>

void printArray(int array[][4]); /* declare function */

int main() {
int array[3][4] = {0,1,2,3,4,5,6,7,8,9,10,11};
printArray(array);
return 0;
}

void printArray(int array[][4]) { /* define function */
int i, j;

for(i=0 ; i<3 ; i++) {
for(j=0 ; j<4 ; j++) {
printf("%2d ", array[i][j]);
}
printf("\n");
}
}




Source:

http://irc.essex.ac.uk/www.iota-six.co.uk/c/f3_passing_arrays_to_functions.asp

Lo acabo de probar asi pero me salta error en ese lugar, se q debe ser una cagada del compilador pero si por ejemplo le pongo las dimensiones en esa parte dsp me salta cualquier cosa como si no tomara la direccion de ese array en la funcion fuera del main >.>

PD:cambie de compilador y anduvo...era la cagada esa q no c como sera ahi, gracias a los q resopondieron :D