Ver Mensaje Individual
  #2 (permalink)  
Antiguo 12/08/2011, 22:06
Avatar de CapacProg
CapacProg
 
Fecha de Ingreso: marzo-2010
Ubicación: Lima - Perú
Mensajes: 324
Antigüedad: 14 años, 7 meses
Puntos: 71
Respuesta: APUNTADORES A ARREGLOS MULTIDIMENSIONALES desde FUNCION

Cuando pasas un arreglo bidimensional a una función no necesita pasar el numero de filas, sólo el de columnas.

La forma en que te mueves dentro del arreglo se llama aritmética de puntero.

Tu ejemplo se puede hacer más interesante si tu función recibiera un puntero a entero y no toda la matriz. Ve eso y sino aquí estamos para ayudarte.

Bueno para que no me puntúes negativo aquí esta el código, basado en lo que hiciste.

Código C:
Ver original
  1. #include <stdio.h>
  2. #include <conio.h>
  3. void apuntarre(int *arre);
  4.  
  5. void main() {
  6.     int arre[3][3];
  7.  
  8.     apuntarre((int*) arre);
  9.  
  10.     for (int x = 0; x < 3; x++) {
  11.         for (int y = 0; y < 3; y++) {
  12.             printf("%d", arre[x][y]);
  13.  
  14.         }
  15.         printf("\n");
  16.     }
  17.  
  18.     getch();
  19. }//fin del main
  20.  
  21. void apuntarre(int *arre) {
  22.     int *ptr, a = 0;
  23.  
  24.     ptr = arre;
  25.  
  26.     for (int x = 0; x < 9; x++) {
  27.  
  28.         ptr[x] = a;
  29.         a++;
  30.  
  31.     }
  32. }
__________________
%
El mejor guerrero no es el que triunfa siempre sino el que vuelve sin miedo a la batalla.
%