Buenas!!
Tengo un pequeño problema con un codigo me compila pero al momento de ejecutarla windows
tira una ventana donde dice que mi programa hace referencia a una zona de memoria a la que
no se puede escribir, les dejo el codigo
#include <stdio.h>
int main()
{
int i;
struct COORD { int array[10], y, z; } punto;
struct COORD *ap_punto;
for(i = 0; i < 10; i++)
ap_punto->array[i] = 2;
punto.y = punto.z = 1;
ap_punto = &punto;
ap_punto->y+=2;
ap_punto->z=3;
for(i = 0; i < 10; i++)
printf("%d ", ap_punto->array[i]);
return 0;
}
Saludos
Probablemente en tu código tengas un problema de declaración de memoria. Lo que se le llama un core dumped, la palabra que más odio xD Eso o tu ordenador lleva más de 2 años (o menos) abierto y tu memoria ha llegado a su máximo jajaj
Es simple, cuando haces esto:
for(i = 0; i < 10; i++)
ap_punto->array[i] = 2;
Acabas de declarar la variable ap_punto, y ni siquiera sabes donde apunta, así que es perfectamente posible que estés tratando de escribir en una zona de memoria protegida.
Me parece que lo querías hacer es llenar el array de la estructura punto, para eso pon esta sentencia antes de llenar el array:
ap_punto = &punto;
Saludos.