Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: MPLS en 14 Octubre 2015, 12:21 pm



Título: Segmentation fault (core dumped)
Publicado por: MPLS en 14 Octubre 2015, 12:21 pm
Estoy haciendo un programa super simple en C para concatenar todos los elementos que paso como parametros con barras entre medias , no se que estoy haciendo mal pero me sale este error despues de compilar correctamente: "Segmentation fault (core dumped)"

Se hacerlo de otras formas pero es necesario que sea con strcat().
Código:

#include <stdio.h>
#include <string.h>


int main ( int argc, char *argv[] )
{
int i;
char *concatenacion ;

fprintf(stdout, "Se han pasado %d parametros \n", (argc - 1) );
for(i=1; i< argc ; i++){


strcat(concatenacion,argv[i] );
strcat(concatenacion, "/");


}
printf("%s", concatenacion);

return 0;
}

PD: Lo tengo que hacer sobre FreeBSD


Título: Re: Segmentation fault (core dumped)
Publicado por: Becerra en 14 Octubre 2015, 14:06 pm
Hola

El problema es que has declarado el puntero concatenacion pero no lo has inicilizado, por tanto estás sobrescribiendo memoria que no le corresponde.

Un saludo