Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [C] Problema con vettore dinamico di tipo struct

    Ciao a tutti... Stavo risolvendo un problema in C quando sono incappato in questo problema.
    Ho la necessità di allocare un vettore dinamico di tipo struct per memorizzarci internamente i contenuti di un file. Il file contiene su ogni riga una data nel formato gg/mm/aaaa.
    La lettura del file e la memorizzazione dei dati avviene in una funzione.
    Nella prima lettura del file leggo semplicemente il numero delle righe per poter poi allocare dinamicamente un vettore di tipo struct.
    Nella seconda lettura memorizzo i dati nel vettore ma quando compilo mi da 3 errori di questo tipo:

    "error: request for member ' ' in something not a structure or union"

    riferiti al rigo evidenziato in grassetto...
    Posto di seguito la porzione di codice per una maggiore chiarezza...


    codice:
    int Leggi(data**);
    typedef struct Data{
        int gg, m, a;
    } data;
    
    int main()
    {
        data *v;
        int num;
    
        num = Leggi(&v);
    
        //Elaborazione del programma.......
        
        return 0;
    }
    
    int Leggi(data** v)
    {
        FILE* pf;
        int num=0, i=0;
        char s[20];
    
        //......Apertura del file per contare il numero delle righe (num)
    
        *v = malloc (num*sizeof(data));
        i=0;
    	while ((fscanf(pf, "%d %*c %d %*c %d", v[i].gg, v[i].m, v[i].a)) != EOF){
            i++;
        }
        fclose(pf);
    
        return num;
    }

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    codice:
    (*v)[i].gg, (*v)[i].m, (*v)[i].a
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Quando ho compilato e mi è uscito l'errore ho capito subito che il problema era lì solo che avevo messo l'asterisco senza le parentesi e continuava a darmi errore

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.