Autor Tema: array multidimensional con picc  (Leído 2231 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado kikip

  • PIC10
  • *
  • Mensajes: 2
array multidimensional con picc
« en: 13 de Julio de 2010, 01:21:38 »
Hola gente, soy novato en el mundo de los compiladores y me veo topado con un problema. resulta que estoy programando en C con compilador CCS para un pic y tengo el problema que cuando declaro un array de 3 dimensiones... ej.. int8 arreglo[4][4][4]; y quiero pasarlo por referencia a una función, el compilador me patea... leyendo encontré que supuestamente no esta soportado el paso de arrays por referencia correcto? ahora bien, para solucionarlo debería volverlos por valor? (en este caso como seria la estructura de la función?->int8* nomfunc...(..))? o de que otra forma se podría hacer? se podría declarar una variable global en el main de tal forma de poder usarla en las funciones? como se haría de ser posible?
gracias

Desconectado fabianjsm

  • PIC18
  • ****
  • Mensajes: 255
    • fabianjsm is on twitter
Re: array multidimensional con picc
« Respuesta #1 en: 01 de Agosto de 2010, 17:40:25 »
Este ejemplo talvez te ayude:

Código: C
  1. int suma(int arreglo[2][2][2])
  2. {
  3.         int i, j, k, r = 0;
  4.         for(i=0; i<2; i++)
  5.                 for(j=0; j<2; j++)
  6.                         for(k=0; k<2; k++)
  7.                                 r += arreglo[i][j][k];
  8.         return r;
  9. }
  10.  
  11. void main()
  12. {
  13.         int8 arreglo[2][2][2];
  14.         for(;;)
  15.                 suma(arreglo);
  16. }

podría declarar una variable global en el main de tal forma de poder usarla en las funciones?

La variables definidas en main, no son globales!
@fabianjsm is on twitter


 

anything