Título: Punteros en C Publicado por: ;c1v!c en 19 Septiembre 2011, 15:06 pm Estoy compilando esto por consola y me tira el siguiente error alguien sabe por que?
Código
Consola: pepe@pepe-netbook:~$ gcc punt1.c -o punt1 punt1.c: In function ‘main’: punt1.c:8: warning: format ‘%d’ expects type ‘int’, but argument 2 has type ‘int *’ EI: juntando mensajes. compilo en el dev-c++ en windows y anda perfecto! Título: Re: Punteros en C Publicado por: rir3760 en 19 Septiembre 2011, 15:17 pm Me parece el mensaje de error es bastante claro: el especificador "%d" espera un (correspondiente) argumento de tipo "int" mientras que tu le pasas "&mientero" que es de tipo "int *".
Si quieres imprimir una dirección de memoria debes utilizar "%p" y convertir explícitamente el puntero al tipo "void *": Código Un saludo Título: Re: Punteros en C Publicado por: ;c1v!c en 19 Septiembre 2011, 15:30 pm ahh gracias, no entendi esta parte "y convertir explícitamente el puntero al tipo "void *"
que pasa si no le pongo (void *) saludos! Título: Re: Punteros en C Publicado por: LearningSpanishProgrammer en 20 Septiembre 2011, 04:33 am c1v!c, tu no estas hacendo la pregunta correcta, en mi opinión, sería:
Código: Por qué es importante la diferencia entre %d y %p? Ahora, piensa lo que pasa caso el equipo es de 64 bits? Título: Re: Punteros en C Publicado por: ;c1v!c en 20 Septiembre 2011, 05:10 am gracias por las respuestas ya solucione todo gracias!!
aca les dejo el ejercicio facil que teni q hacer pero sirve como ejemplo: muestra las direcciones de memoria de las variables: Código
|