Passaggio struct e file

di il
8 risposte

Passaggio struct e file

Ciao ragazzi!!
Ho rilevato un errore durante la programmazione in c riguardo il trasferimento della struct,dal main ad un altro programma.
codice dal main

#include<stdio.h>
#include"operazioni.h"
#include"scegli.h" \\una "libreria" che restituisce una lista  es:inserisci a per aggiungere , s salvare ...

struct dipendeti{
   char* nome[20];\\non mi soffermo su tutti i dettagli
} * ptr ;

int main(){
  FILE *fptr;
  char valore;
  if((fptr=fopen("lista.txt","r"))== NULL) {
       printf("errore\n");
  }else
  {
   while(valore!='x'){\\valore= x corrisponde uscire dal programma
      valore=scegli();
      switch(valore){
       case 'a':
       aggiungi(fptr,ptr);
     }
  }
}
codice operazioni

#include<stdio.h>
#include"operazioni.h"

void aggiungi(FILE *fptr, struct dipendenti ptr){
    printf("aggiungi il nome del dipendente\n");
    gets(ptr->nome);}
Ovviamente il programma non è concluso ma quando lo vado a testare mi da errore nel gets e nella funzione aggiugi(Warning). Sapete dirmi il perchè
PS:Sono un principiante

8 Risposte

  • Re: Passaggio struct e file

    Intanto hai scritto

    dipendeti
  • Re: Passaggio struct e file

    XD errore di battitura
  • Re: Passaggio struct e file

    Sì, ma il compilatore non sopporta gli errori di battitura ...

    E poi tutti i commenti non devono iniziare per \\ ma per //

    Infine

    char* nome[20];

    è un vettore di puntatori ... se vuoi una stringa devi scrivere

    char nome[20];

    Poi ci sono tanti altri errori ...
  • Re: Passaggio struct e file

    Okey ma l'errore non è quello perchè non ho fatto copia e incolla ma l'ho trascritto nuovamente "a mano"
  • Re: Passaggio struct e file

    Me li potresti indicare per cortesia?
  • Re: Passaggio struct e file

    Te ne ho già evidenziato tre ... prova a fare le correzioni e ne riparliamo ...
  • Re: Passaggio struct e file

    Ah grazie adesso ho capito tutto!
  • Re: Passaggio struct e file

    Hai capito tutto perché ti hanno risposto su un altro forum!
    Questa tecnica scorretta si chiama crossposting ed è vietata.
Devi accedere o registrarti per scrivere nel forum
8 risposte