• Martes 30 de Abril de 2024, 05:15

Autor Tema:  Error de Violacion de segmento en codigo en C  (Leído 2937 veces)

leymari

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Error de Violacion de segmento en codigo en C
« en: Miércoles 25 de Junio de 2014, 05:21 »
0
El siguiente codigo me da el error Violacion de segmento y no se porque razon y ni que en linea se encuentra el error

#include<stdio.h>
#include<stdlib.h>

struct vehiculo{

char nombre[35];
char modelo[20];
char placa[10];
int telefono;

};

int sum=0;

void agregar(struct vehiculo *dir){

printf("Ingrese el nombre del porpietario del vehiculo\n");
scanf("%s", dir[sum].nombre);

printf("Ingrese el modelo del vehiculo\n");
scanf("%s", dir[sum].modelo);

printf("Ingrese la placa del vehiculo\n");
scanf("%s", dir[sum].placa);

printf("Ingrese el numero de telefono del propietario del vehiculo\n");
scanf("%d", &dir[sum].telefono);

sum++;


}


int main(){
struct vehiculo directorio[4];
int op=0;

while(op!=6){
printf("\t\t Directorio de Vehiculos de Meirda\n\n");
printf("1-Añadir una nueva persona al directorio\n");
printf("2-Añadir un nuevo vehiculo a persona existente en el directorio\n");
printf("3-Ver datos de un vehiculo por medio de la placa\n");
printf("4-Ver vehiculos de un mismo propietario\n");
printf("5-Ver todos los datos\n");
printf("6-Salir del sistema\n");
scanf("%d",&op);

switch(op){

case 1:
agregar(directorio);
break;

}

}
return 0;

}

zShackra

  • Nuevo Miembro
  • *
  • Mensajes: 3
  • Nacionalidad: ve
  • #include <me>
    • Ver Perfil
Re:Error de Violacion de segmento en codigo en C
« Respuesta #1 en: Miércoles 25 de Junio de 2014, 09:22 »
0
Hola, he compilado tu código y funciona como debería.

Debe ser problema de tu ordenador, ya sea el compilador o el sistema instalado.

Por cierto, ten cuidado con scanf, usa algo más controlado como fgets + sscanf.

Saludos.

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re:Error de Violacion de segmento en codigo en C
« Respuesta #2 en: Lunes 30 de Junio de 2014, 19:31 »
0
¿Sera que te pasa cuando llamas mas de 4 veces a agregar?

struct vehiculo directorio[4];

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.