Título: [C](Consulta) Pregunta sobre si una característica es de ANSI C (sobre arreglos) Publicado por: class_OpenGL en 4 Junio 2016, 18:40 pm Hola. Quería preguntar si el hecho de que un arreglo se apunte a si mismo es coincidencia o es una característica de ANSI C, es decir, la dirección del arreglo y la dirección a la que apunta el arreglo es la misma (al menos eso me pasa con MinGW-w64).
Código
Gracias Título: Re: [C](Consulta) Pregunta sobre si una característica es de ANSI C (sobre arreglos) Publicado por: geeke en 4 Junio 2016, 19:46 pm No es coincidencia el estándar garantiza que arreglo y &arreglo siempre apuntaran a la misma dirección (el primer elemento del array) pero tienen tipos diferentes no es lo mismo hacer
Código Y Código
Título: Re: [C](Consulta) Pregunta sobre si una característica es de ANSI C (sobre arreglos) Publicado por: class_OpenGL en 4 Junio 2016, 21:27 pm En 32 bits sí que sería lo mismo XDD
En 64 bits no, pues la primera se incrementa en 4 y la segunda en 8 :P Gracias :D Título: Re: [C](Consulta) Pregunta sobre si una característica es de ANSI C (sobre arreglos) Publicado por: geeke en 5 Junio 2016, 23:14 pm En 32 bits sí que sería lo mismo XDD En 64 bits no, pues la primera se incrementa en 4 y la segunda en 8 :P Gracias :D Supongamos el siguiente arreglo: Código
arreglo es de tipo int* un puntero al primer elemento de arreglo &arreglo es de tipo int (*)[8] un puntero a un arreglo de 8 enteros Por lo tanto si hacemos arreglo + 1 incrementara 4 bytes (suponiendo int == 4 bytes) pero &arreglo + 1 sabiendo que es un puntero a arreglo de 8 ints el incremento sera 4 * 8 = 32 saltamos 8 bytes justo despues del final de arreglo. Puedes comprobar esto haciendo: Código
Título: Re: [C](Consulta) Pregunta sobre si una característica es de ANSI C (sobre arreglos) Publicado por: class_OpenGL en 5 Junio 2016, 23:17 pm Ups. No consideré el tamaño del arreglo... qué despiste el mío XDD Gracias por la aclaración
|