elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ayuda con error ejecutando un programa en C
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con error ejecutando un programa en C  (Leído 2,057 veces)
solid120

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Ayuda con error ejecutando un programa en C
« en: 3 Junio 2012, 01:36 am »

Hola, espero que me puedan ayudar tengo un error que llevo ya casi 2 dias sin poder hacer nada
tengo que entregar un proyecto final en C,
el programa me compila y todo, pero al querer hacer las consultas me salta este me manda a "Error" directamente que es lo que me debe de imprimir si no tengo datos ya cheque consulta.c y veo todo bien, desde consulta.c mando a llamar ordenar.c que es la que ordena los datos, e igual lo miro bien, por eso pido de su ayuda a ver si encuentran un error.
archivos apenas vimos una clase y nos encargaron el proyecto asi, y por lo poco que vimos la verdad tengo muchas dudas.
bueno si mas le dejo los codigos:
consulta.c
Código:
#include<stdio.h>
#include"estructura.h"
void consultag()
{FILE *Art;
 articulo A;
 ordenar();
 if((Art=fopen("Arti.dat","rb"))==NULL){
         printf("Error...");
 exit(0);}
 else
{write(fread(&A,sizeof(articulo),1,Art)>0);
        imprimir(A);
        fclose(Art);
}
}

ordenar.c
Código:
#include<stdio.h>
#include"estructura.h"
void ordenar()
{FILE *Art;
 articulo A,A2,aux;
 int x,y;
 long int N;
 if((Art=fopen("arti.dat","rb+"))==NULL)
 { printf("Error...\n");
         exit (0);}
 else
 {fseek(Art,0L,2);
         N=ftell(Art)/sizeof(articulo);
         rewind(Art);
         for(x=1;x<N;x++)
                 for(y=0;y<N-x;y++)
                 {fseek(Art,y*sizeof(articulo),0);
                  fread(&A,sizeof(articulo),1,Art);
                  fseek(Art,(y+1)*sizeof(articulo),0);
                  fread(&A2,sizeof(articulo),1,Art);
                  if(A.precio>A2.precio)
                  {aux=A;
                   A=A2;
                   A2=aux;
                   fseek(Art,y*sizeof(articulo),0);
                   fwrite(&A,sizeof(articulo),1,Art);
                   fseek(Art,(y+1)*sizeof(articulo),0);
                   fwrite(&A2,sizeof(articulo),1,Art);
                                  }
                 }
         fclose(Art);
 }
}

El problema es que me imprime "error" y tambien he llege a pensar que podrian ser las altas
por si acaso les dejo el codigo de altas.c
Código:
#include<stdio.h>
#include<stdlib.h>
#include"estructura.h"
void  altas()
{FILE *Art;
        articulo A;
        char salir[5];
        float t;
        Art=fopen("arti.dat","ab");
        do{
        printf("Clave del articulo:\n");
         scanf("%s",&A.clave);
         system("clear");
         printf("Tipo:\nBlusa:\nVestido:\nZapato:\nAccesorio:\n");
         scanf("%s",&A.tipo);
         printf("Descripcion del articulo:\n");
         system("clear");
         printf("Color:\n");
         scanf("%s",&A.descrip.color);
         system("clear");
         printf("Medida\n");
         scanf("%s",&A.descrip.medida);
         system("clear");
         printf("Precio articulo:\n");
         scanf("%f",&t);
         A.precio=t;
         system("clear");
         printf("Codigo de barras:\n");
         scanf("%d",&A.codb);
         getc(stdin);
         system("clear");
         printf("Desea ingresar otro articulo?(S/N)\n");
         scanf("%s",salir);
         fwrite(&A,sizeof(articulo),1,Art);
        }while(strcmp(salir,"no"));
        fclose(Art);
}

Espero que me puedan ayudar por favor, seria de gran gran ayuda.


En línea

durasno


Desconectado Desconectado

Mensajes: 373


Ver Perfil
Re: Ayuda con error ejecutando un programa en C
« Respuesta #1 en: 3 Junio 2012, 03:21 am »

Hola! si te imprime error puede ser por el nombre del archivo q le pasas a fopen. En consulta.c usas "Arti.dat", la primera letra en mayuscula
En ordenar.c y altas.c usas "arti.dat", todo en minuscula

"Arti.dat" y "arti.dat" son dos cosas distintas. Saludos


En línea

Ahorrate una pregunta, lee el man
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Saber si mi programa se estuvo ejecutando
Programación Visual Basic
barzata 3 1,521 Último mensaje 3 Julio 2008, 17:47 pm
por barzata
saber si un programa se esta ejecutando
Programación Visual Basic
ToNy_EsP 5 19,480 Último mensaje 16 Enero 2010, 23:08 pm
por Hasseds
Ejecutando un programa con UltraVNC
Hacking
APOKLIPTICO 0 2,281 Último mensaje 15 Diciembre 2009, 22:37 pm
por APOKLIPTICO
BATCH Ejecutar programa X tiempo si no se esta ejecutando SOLUCIONADO
Scripting
Synth3tik0 5 13,544 Último mensaje 8 Enero 2013, 06:17 am
por recari19833
Ayuda con parametros ejecutando una shell
Programación Visual Basic
gabodawn 2 2,628 Último mensaje 24 Marzo 2012, 04:37 am
por gabodawn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines