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

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


  Mostrar Mensajes
Páginas: [1]
1  Programación / Programación C/C++ / Re: Problema con la lectura de este archivo Binario en: 27 Septiembre 2021, 22:26 pm
Mira, recién probé con el retorno de fread y sigue pasando lo mismo; y las extensiones la verdad las estábamos usando solo para los archivos de texto, en ningún momento me dijeron que utilizara una extensión para un archivo binario. No creo que la solución sea la extensión...
2  Programación / Programación C/C++ / Problema con la lectura de este archivo Binario en: 27 Septiembre 2021, 20:36 pm
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5.  
  6. struct ARTI {
  7.    short int ART;
  8.    char COD[50];
  9.    char DESC[100];
  10.    char FAB[50];
  11.    short int STOCK;
  12.    int POS;
  13. }    ;
  14.  
  15.  
  16. int main()
  17. {
  18.    FILE * FP;
  19.    struct ARTI X;
  20.  
  21.  
  22.    if((FP = fopen("BDARTICULOSindexado","rb")) == NULL)
  23.    {
  24.        printf("\n\n\t ERROR EN LA APERTURA DEL ARCHIVO\n\n");
  25.        exit(1);
  26.    }
  27.  
  28.    fread(&X,sizeof(X),1,FP);
  29.    printf("\n\n %5s %10s %30s %27s %8s %15s","ARTICULO","CODIGO","DESCRIPCION","FABRICANTE","STOCK","POSICION");
  30.  
  31.    while(!feof(FP))
  32.    {
  33.        printf("\n\n %5d %15s %35s %20s %8d %10d ",X.ART , X.COD , X.DESC , X.FAB , X.STOCK , X.POS);
  34.        fread(&X,sizeof(X),1,FP);
  35.    }
  36.  
  37.  
  38.    fclose(FP);
  39.  
  40.    printf("\n\n\n\n");
  41. }
  42.  

El problema acá es que a la hora de ver en pantalla el printf con los datos muestra algunas cosas que están en la base de datos y otra parece basura del sistema; la base de datos es correcta porque ya la utilicé en otros programas. No se que hacer realmente, si me pudieran ayudar se los agradecería.

MOD: Etiqueta GeSHi
3  Programación / Programación C/C++ / Ayuda con el uso de & y * en C en: 28 Agosto 2021, 04:26 am
Que tal, tengo unas dudas respecto a cuestiones con punteros en C que no logro entender,  espero que me puedan ayudar, se los agradecería mucho.

El codigo es el siguiente:

struct alumno{
    int legajo;
    char genero;
    char nombre[30];
    float promedio;
};

int main(){

struct alumno *P; // PUNTERO PARA EL VECTOR DE ESTRUCTURAS EN MEMORIA DINAMICA
   int I;


    P = (struct alumno*) malloc(3 * sizeof(struct alumno));


    printf("\n\n\t INGRESO DE LOS DATOS");


       for( I = 0 ; I < N ; I++)
        {
            printf("\n\n\t INGRESE EL NOMBRE : ");
            gets((P+I)->nombre);

            printf("\n\t INGRESE EL LEGAJO : ");
            scanf("%d", &((P+I)->legajo));

            printf("\n\t INGRESE EL GENERO : ");
            scanf("%c", &((P+I)->genero));

            printf("\n\t INGRESE EL PROMEDIO : ");
            scanf("%f", &((P+I)->promedio));
            fflush(stdin);
        }

Lo que no logro entender es por que en los scanf es necesario utilizar el operador & para su direccion en memoria. No es que al estar apuntando a un campo de la struct alumno ya es una dirección? Y por que en el caso del gets no necesito ponerlo? No lo entiendo.

Gracias por su tiempo!
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines