Sobre un programa en C, urgente!
Hola tengo una dudilla con el uso de punteros, me gustaría que me la resolvieras, el programa es el siguiente:
main()
{
int array[5]={1,2,3,4,5};
int *array_ptr;
int valor;
array_ptr=&array[1];
valor=array_ptr[1];
printf("%d", valor);
}
Me da como salida en este programa 3 y a veces otras cosas, no entiendo yo creo que me tendría que dar 2, porque el puntero apunta a array[1], no entiendo que pasa, porque el puntero lo uso como un array, bueno no se me gustaría que me dijeses cual es el fallo.
Además al hacer mas o menos lo mismo en otro programa me hace lo q yo quiero.
main()
{
int array[5]={1,2,3,4,5};
int *array_ptr;
int valor;
array_ptr=&array[0];
valor1=array_ptr[0];
printf("%d", valor);
}
Aquí me da como salida 1 q es lo q creo q me tiene q dar, no entiendo me gustaría q me aclararas por qué en el primer programa no me da la salida esperada, muchas gracias, me gustaría también q me contestases rápido porque tengo examen el sábado y lo necesito muchas gracias.
main()
{
int array[5]={1,2,3,4,5};
int *array_ptr;
int valor;
array_ptr=&array[1];
valor=array_ptr[1];
printf("%d", valor);
}
Me da como salida en este programa 3 y a veces otras cosas, no entiendo yo creo que me tendría que dar 2, porque el puntero apunta a array[1], no entiendo que pasa, porque el puntero lo uso como un array, bueno no se me gustaría que me dijeses cual es el fallo.
Además al hacer mas o menos lo mismo en otro programa me hace lo q yo quiero.
main()
{
int array[5]={1,2,3,4,5};
int *array_ptr;
int valor;
array_ptr=&array[0];
valor1=array_ptr[0];
printf("%d", valor);
}
Aquí me da como salida 1 q es lo q creo q me tiene q dar, no entiendo me gustaría q me aclararas por qué en el primer programa no me da la salida esperada, muchas gracias, me gustaría también q me contestases rápido porque tengo examen el sábado y lo necesito muchas gracias.
Respuesta de jlramirez
1