hola,estoy aprendiendo c en un curso y he llegado al tema de representar arrays multidimiensionales mediante punteros
el tema de representar arrays unidimensionales mediante punteros lo tengo claro.
la duda llega en si deberia aprender a representar los multidimiensionales con punteros.
segun me ha dicho mi mentor es mas complicado y no es necesario aprenderlo ya que para representarlos es mas facil el modo convencional (num[6][6][5])
me vendria bien estudiarlo para aplicarlo luego a la programacion con gemix o como dice mi tutor no es necesario?
sobre c y los arrays
- shao
- Posts: 6048
- Joined: Wed Jun 17, 2009 4:51 pm
sobre c y los arrays
Contacto: romopua@gmail.com
- CicTec
- Posts: 16590
- Joined: Thu Jul 31, 2008 10:18 pm
Re: sobre c y los arrays
hola shao,
Pues si, lo que te dijo tu tutor es correcto, no los usa casi nadie, porque aparte de ser mas complicados de usar, resultan tambien mas de leer, lo usual es usar la forma mediande array clasica, con la nueva beta de Gemix utilizas el array de la misma forma mediante la nueva opcion cstyle_matrix:
La forma con puntero no te la recomiendo es mucho mas compleja de entender y programar 
Pues si, lo que te dijo tu tutor es correcto, no los usa casi nadie, porque aparte de ser mas complicados de usar, resultan tambien mas de leer, lo usual es usar la forma mediande array clasica, con la nueva beta de Gemix utilizas el array de la misma forma mediante la nueva opcion cstyle_matrix:
Code: Select all
compiler_options _use_cstyle_matrix;
program test_arrays;
global
int num[10][10][10]; // array de 10x10x10
begin
num[6][6][5] = 10;
end
- kozka
- Posts: 2111
- Joined: Sun Feb 01, 2009 9:36 pm
Re: sobre c y los arrays
eso es un poco trabalenguas tronco xD..nose
a[5];=5 int a los que poder acceder mentiante a[1]=patata a[2]=pataton
a[5][5]; a[1][1]=patata a[1][2]=pataton
nose
caracteristicas_enemigo[3][3]; // [x][1]=vidas [x][2]=velocidad [x][3]=yokese
caracteristicas_enemigo[1][1]=10; //el enemigo numero 1 tendra 10 de vida
caracteristicas_enemigo[1][1]--; //le quitamos una vida al tronko xd
espero te sirva de algo

a[5];=5 int a los que poder acceder mentiante a[1]=patata a[2]=pataton
a[5][5]; a[1][1]=patata a[1][2]=pataton
nose
caracteristicas_enemigo[3][3]; // [x][1]=vidas [x][2]=velocidad [x][3]=yokese
caracteristicas_enemigo[1][1]=10; //el enemigo numero 1 tendra 10 de vida
caracteristicas_enemigo[1][1]--; //le quitamos una vida al tronko xd
espero te sirva de algo
- shao
- Posts: 6048
- Joined: Wed Jun 17, 2009 4:51 pm
Re: sobre c y los arrays
tio,d.p.m.
por que la verdad me parecia un engorro el tema.
me agrada que exista la funcion,a mi me sera mas facil representarlos asi.
gracias
por que la verdad me parecia un engorro el tema.
me agrada que exista la funcion,a mi me sera mas facil representarlos asi.
gracias
Contacto: romopua@gmail.com
- CicTec
- Posts: 16590
- Joined: Thu Jul 31, 2008 10:18 pm
Re: sobre c y los arrays
jeje me alegra, te lo pongo solo por curiosidad comparativa, las versiones con array y con puntero:shao wrote:tio,d.p.m.
por que la verdad me parecia un engorro el tema.
me agrada que exista la funcion,a mi me sera mas facil representarlos asi.
gracias
Code: Select all
int array[10][10][10];
int *ptrarray = array;
array[6][6][5] = 10; // version array clasica con indices
*(*(*(ptrarray + 6) + 6) + 5) = 10; // version array por medio de punteros
- GINO
- Posts: 2823
- Joined: Thu Jul 31, 2008 10:25 pm
- Contact:
Re: sobre c y los arrays
kozka: aunque declares el array al estilo C como [10][10][10], osea, indicando el numero de elementos de cada dimension, sigue siendo Zero based, es decir, accedes a los elementos con los indices 0 .. 9, como se hace en C.
- kozka
- Posts: 2111
- Joined: Sun Feb 01, 2009 9:36 pm
Re: sobre c y los arrays
patata[10] ---- ya yase que empieza por el 0 .... pero entonces que hay 11 XD oke?-..nose supongo que cuando lo halla usao me daria cuenta
de todas formas estoy mu fuamo
de todas formas estoy mu fuamo
- xdios
- Posts: 188
- Joined: Thu May 28, 2009 12:41 pm
Re: sobre c y los arrays
Tios no se de que leches estais hablando pero os apoyo...
A ver si este año que me he matriculao en programacion me pongo al dia en ciertas terminologias que se me escapan.
A ver si este año que me he matriculao en programacion me pongo al dia en ciertas terminologias que se me escapan.
![[RETO]: Concurso navideño - [JUEGO]: La Fábrica de Regalos [RETO]: Concurso navideño - [JUEGO]: La Fábrica de Regalos](../space/gold_medal.png)
- TYCO
- Posts: 3611
- Joined: Tue Sep 02, 2008 7:38 pm
- Contact:
Re: sobre c y los arrays
patata[10] directamente tienes desde... patata[0] hasta patata[10].kozka wrote:patata[10] ---- ya yase que empieza por el 0 .... pero entonces que hay 11 XD oke?-..nose supongo que cuando lo halla usao me daria cuenta
de todas formas estoy mu fuamo
Si indicas que sea como en C... tendrías:
patata[10] desde... patata[0] hasta patata[9].
tienes que indicar al principio: compiler_options _use_cstyle_matrix; antes del PROGRAM.
Todo Modo Gráfico tiene por detrás una Línea de Comandos.
Proyecto: SnowCraft Remake (100%).
Proyecto: Bomb a Bomb Remake (100%).
Proyecto: Rally Mortal (87%).
![[RETO]: 20lineas - [JUEGO]: eLaberinto [RETO]: 20lineas - [JUEGO]: eLaberinto](../space/silver_medal.png)
![[CONCURSO]: EL JUEGO DEL VERANO 2011 - [JUEGO]: PlayaBall [CONCURSO]: EL JUEGO DEL VERANO 2011 - [JUEGO]: PlayaBall](../space/bronze_medal.png)
Proyecto: SnowCraft Remake (100%).
Proyecto: Bomb a Bomb Remake (100%).
Proyecto: Rally Mortal (87%).
![[RETO]: 20lineas - [JUEGO]: eLaberinto [RETO]: 20lineas - [JUEGO]: eLaberinto](../space/silver_medal.png)
![[CONCURSO]: EL JUEGO DEL VERANO 2011 - [JUEGO]: PlayaBall [CONCURSO]: EL JUEGO DEL VERANO 2011 - [JUEGO]: PlayaBall](../space/bronze_medal.png)