[Programación] Re: [Programación] c, array, punteros
José Luis Diaz
programacion@lugro.org.ar
Sat, 18 Sep 2004 21:24:45 -0300
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Saturday 18 September 2004 21:04, Mauro Macagno wrote:
> Hola gente alguien me puede decir porque algo tan sencillo como esto:
>
> char *mensaje;
>
> scanf("%s",&mensaje);
>
> printf("%s",mensaje);
>
> me tira una violacion de segmento.
por que *mensaje apunta a cualquier lado :) tendría que apuntar a algún lugar
que tengas reservada memoría :)
ej.
char mensaje[20]; // mensaje es un puntero al primer elemento.
char *mensaje;
mensaje = (char *)malloc(sizeof(char) * 20);
demás frutas con alloca, quedan a discreción.
aparte sería:
scanf("%s",mensaje); // ya que mensaje es un puntero :)
te recomiendo que veas el capitulo 5 del libro "El Lenguaje de programación
C", de Kernghan y Ritchie.
- -Jx
- --
Jose Luis Diaz - jose<at>rtfm.org.ar</at> /"\ ASCII Ribbon Campaign
GNU/Linux Registered User #138499 \ / No HTML in mail or news!
RTFM! - http://rtfm.org.ar X
"Kernel Panic - No signature found" / \
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
iD8DBQFBTNHPM4NSjXvNJ1cRAjQlAJ9oxe4wVTaOSh2Jf37902FDXZVS/QCgrIpA
rXW3HjPkMJfRKRN9vxHgogI=
=kHRX
-----END PGP SIGNATURE-----