Fecha y hora actual: Sábado 23 Jun 2018 17:49
Índice del Foro

Foros de programación informática, diseño gráfico y Web

En esta comunidad intentaremos dar soporte de programación a todos los niveles, desde principiantes a profesionales de la informática, desarrollo de programas, programación web y mucho más.

Error id returned 1 exit status

Responder al Tema

Índice del Foro > C, C#, Visual C++ > Error id returned 1 exit status

Autor Mensaje
FREDO638



Registrado: 19 May 2018
Mensajes: 1

Mensaje Publicado: Sábado 19 May 2018 14:59

Título del mensaje: Error id returned 1 exit status

Responder citando

Necesito ayuda, recien descargue dev c++ y cuando solo queria checar unas funciones me salto el error de que me niega permiso de abrir el archivo y el id returned 1 pero no le veo nada raro al codigo, ademas de que es la primera compilacion, no me ha creado el .exe para ejecutarlo manualmente, asi que no puedo hacer mas, ayuda :'v


codigo:
Código:

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

typedef struct{
   int id;
   char nom[30];
   int edad;
   char drc[30];
   char tel[10];
   char pue[8];
   int sal;
   char est[10];   
}Emp;

typedef struct{
   int id;
   int estado;
   int cuenta;
   }Mesa;
   
//Prototipos-MENUS
int menui();
void menue();

//Prototipos-Procesos
void altaem();
void bajaem();
void mosem();

int main(){
   printf("AIIUDA");
   menui();
   
   getchar();
   return 0;
}

//MENUS
int menui(){
   int op;
   do{
      printf("\n MENU PRINCIPAL: \n");
      printf(" (1) EMPLEADOS \n");
      printf(" (2) ALMACEN \n");
      printf(" (3) ORDENAR \n");
      printf(" (4) RESERVACION \n");
      printf(" (5) PAGO-SERVICIO \n");
      printf(" (6) *CONCLUIR JORNADA \n");
      scanf("%i",&op);
      switch(op){
         case 1:
            menue();
            break;
         case 2:
            break;
         case 3:
            break;
         case 4:
            break;
         case 5:
            break;
         default:
            printf("\n NOS VEMOS MAÑANA \n");
            break;
      }
   }while(op>0 && op<6);
}

void menue(){
   int op;
   do{
      printf("\n MENU EMPLEADOS: \n");
      printf("\n (1) ALTAS \n");
      printf("\n (2) BAJAS \n");
      printf("\n (3) MOSTRAR EMPLEADOS \n");
      printf("\n (4) REGRESAR \n");
      scanf("%i",&op);
      switch(op){
         case 1:
            altaem();
            break;
         case 2:
            bajaem();
            break;
         case 3:
            mosem();
            break;
         default:
            break;
         
      }
   }while(op>0 && op<4);
   
}

void altaem(){
   FILE *fAE;
   int op,n,e;
   char p,ger[]="GERENTE",mes[]="MESERO",coc[]="COCINERO";
   char dis[]="DISPONIBLE",ocu[]="OCUPADO",vac[]="VACACIONES";
   fAE = fopen("empleados.dat","ab");
   if(fAE == NULL){
      exit(1);
   }
   Emp emp;
   do{
      fflush(stdin);
      n = 100 + rand() % (999-100)+100;
      emp.id = n;
      printf("\n ID GENERADO AUTOMATICAMENTE: \n");
      printf("  %i \n",n);
      printf("\n INGRESE NOMBRE COMPLETO: \n");
      gets(emp.nom);
      fflush(stdin);
      printf("\n INGRESE EDAD: \n");
      scanf("%i",&emp.edad);
      fflush(stdin);
      printf("\n INGRESE DIRECCION: \n");
      gets(emp.drc);
      fflush(stdin);
      printf("INGRESE TELEFONO:");
      gets(emp.tel);
      fflush(stdin);
      do{
      printf("\n INGRESE PUESTO DE TRABAJO: \n A) GERENTE\n B) MESERO\n C)COCINERO");
      scanf("%c",&p);
      switch(p){
         case 'A':
            fflush(stdin);
            strcpy(emp.pue,ger);
            break;
         case 'B':
            fflush(stdin);
            strcpy(emp.pue,mes);
            break;
         case 'C':
            fflush(stdin);
            strcpy(emp.pue,coc);
            break;
         default:
            printf("\n INGRESE UNA OPCION CORRECTA \n");
            break;
      }
       }while(p != 'A' && p != 'B' && p != 'C');
       fflush(stdin);
      printf("\n INGRESE SALARIO: \n");
      scanf("%i",&emp.sal);
      fflush(stdin);
      do{
         printf("\n INGRESE ESTADO: \n 1) DISPONIBLE\n 2) OCUPADO\n 3) VACACIONES\n");
         scanf("%i",&e);
         switch(e){
            case 1:
               fflush(stdin);
               strcpy(emp.est,dis);
               break;
            case 2:
               fflush(stdin);
               strcpy(emp.est,ocu);
               break;
            case 3:
               fflush(stdin);
               strcpy(emp.est,vac);
               break;
            default:
               printf("\n INGRESE UNA OPCION CORRECTA \n");
               break;
         }
      }while(e != 1 && e != 2 && e != 3);
      fwrite(&emp, sizeof(Emp), 1, fAE); //GUARDANDO INFORMACION EN EL ARCHIVO
      fflush(stdin);
      printf("\n DESEA INCORPORAR OTRO EMPLEADO? \n 1) SI \n 2) NO");
      scanf("%i",&op);
   }while(op==1);
   fclose(fAE);
}

void bajaem(){
   FILE *fBE;
   int n,existe=0,pos;
   char b[]="BAJA";
   fBE = fopen("empleados.dat","r+b");
   if(fBE == NULL){
      exit(1);
   }
   printf("\n INGRESE ID DEL EMPLEADO: \n");
   scanf("%i",&n);
   Emp emp;
   fread(&emp, sizeof(Emp), 1, fBE);
   while(!feof(fBE)){
      if (n==emp.id){
         strcpy(emp.est,b);
           int pos=ftell(fBE)-sizeof(Emp);
           fseek(fBE,pos,SEEK_SET);
           fwrite(&emp, sizeof(Emp), 1, fBE);
           printf("\n SE DIO DE BAJA AL TRABAJADOS CON ID: %i \n",n);
           existe=1;
           break;
        }
        fread(&emp, sizeof(Emp), 1, fBE);
   }
   if (existe==0){
        printf("\n NO EXISTE UN TRABAJADOS CON ID: %i\n",n);
    }
    fclose(fBE);
}

void mosem(){
   FILE *fME;
   fME = fopen("empleados.dat","rb");
   if (fME==NULL){
        exit(1);
    }
    Emp emp;
    fread(&emp, sizeof(Emp), 1, fME);
    while(!feof(fME)){
        printf("\n ID:         %i",emp.id);
        printf("\n NOMBRE:     %s",emp.nom);
        printf("\n EDAD:       %i",emp.edad);
        printf("\n DIRECCION:  %s",emp.drc);
        printf("\n TELEFONO:   %s",emp.tel);
        printf("\n PUESTO:     %s",emp.pue);
        printf("\n SALARIO:    $%i",emp.sal);
        printf("\n ESTADO:     %s",emp.est);
       
        printf("\n\n");
        fread(&emp, sizeof(Emp), 1, fME);
    }
    fclose(fME);
}

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Alexweb



Registrado: 25 May 2018
Mensajes: 6

Mensaje Publicado: Domingo 03 Jun 2018 13:14

Título del mensaje: Error id returned 1 exit status

Responder citando

si puedes enviar una foto con el error seria bueno para poder detectar mejor el mismo, sin embargo, [ EDITADO POR TESIS ]

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Snaked



Registrado: 09 Jun 2018
Mensajes: 3

Mensaje Publicado: Sábado 09 Jun 2018 00:31

Título del mensaje: Error id returned 1 exit status

Responder citando

yo asi en un primer vistazo tampoco veo nada malo, a lo que llevas hecho de momento......lo he pegado en mi compilador y ha compilado a la primera sin ningun error raro..... l

pero una cosa que te digo, es "MIRA DONDE ESTAS INTENTANDO CREAR EL ARCHIVO" porque windows tiene un sistema un poco picajoso de permisos en ciertas carpetas y eso

COMPRUEBA en que carpetas almacena el EXE el compilador tuyo tambien

tambien ten en cuenta....que si no existe el archivo de empleados.dat tienes que controlar esto, con respecto a los modos de abrir con el Fopen ya que en un principio con el programa en limpio, dicho archivo no existira......una solucion es crearlo con un solo registro y en la distribucion limpia, incluir empleados.dat en la distribucion de archivos.....

de todas formas, el Fopen del archivo.... leete esto

Cita:
Sintaxis:

FILE *fopen(char *nombre, char *modo);

Esta función sirve para abrir y crear ficheros en disco. El valor de retorno es un puntero a una estructura FILE. Los parámetros de entrada son:

nombre: una cadena que contiene un nombre de fichero válido, esto depende del sistema operativo que estemos usando. El nombre puede incluir el camino completo.
modo: especifica en tipo de fichero que se abrirá o se creará y el tipo de datos que puede contener, de texto o binarios:
r: sólo lectura. El fichero debe existir.
w: se abre para escritura, se crea un fichero nuevo o se sobreescribe si ya existe.
a: añadir, se abre para escritura, el cursor se situa al final del fichero. Si el fichero no existe, se crea.
r+: lectura y escritura. El fichero debe existir.
w+: lectura y escritura, se crea un fichero nuevo o se sobreescribe si ya existe.
a+: añadir, lectura y escritura, el cursor se situa al final del fichero. Si el fichero no existe, se crea.
t: tipo texto, si no se especifica "t" ni "b", se asume por defecto que es "t"
b: tipo binario.


aunque a mi me funciona y me crea el empleados.dat en la carpeta donde tengo el EXE.....tecnicamente a mi me funciona

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Alexweb



Registrado: 25 May 2018
Mensajes: 6

Mensaje Publicado: Sábado 09 Jun 2018 15:49

Título del mensaje: Error id returned 1 exit status

Responder citando

¿aun posees es error?, has checado la pagina de megacursos que te recomendé?

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Responder al Tema
Mostrar mensajes anteriores:   
Ir a:  
Todas las horas están en GMT + 2 Horas

Temas relacionados

Tema Autor Foros Respuestas Publicado
El foro no contiene ningún mensaje nuevo

Error con DataGridView

vampi2004 Visual Basic .NET 0 Domingo 05 Nov 2017 10:17 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Ayuda con error script - Juego Online

streaming77 Java 5 Miércoles 04 Oct 2017 21:10 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Proceso terminado con status... Ayuda en Fortran

Hitzeko Programación en general 1 Lunes 23 Ene 2017 15:12 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Error al compilar para Code Bolcks las wxWidgets

Nucleorion C, C#, Visual C++ 4 Miércoles 04 Ene 2017 21:37 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Error en using c# as.net

llogui C, C#, Visual C++ 3 Viernes 01 Jul 2016 18:05 Ver último mensaje
Panel de Control
No puede crear mensajes, No puede responder temas, No puede editar sus mensajes, No puede borrar sus mensajes, No puede votar en encuestas,