non ho capito quello che hai scritto, scusami.. in che senso argomento passato?
comunque cambiando la fread il programma funziona..
codice:#define _CRT_SECURE_NO_WARNINGS #include <stdlib.h> #include <stdio.h> /* definisco la struttura */ struct contatto { char nome[255]; char cognome[255]; char telefono[255]; }; struct contatto *link; /* corpo della prima1 funzione */ void contatto_read_bin (struct contatto *pc, FILE *f) { fread(pc->nome, sizeof(struct contatto), 1, f); fread(pc->cognome, sizeof(struct contatto), 1, f); fread(pc->telefono,sizeof(struct contatto), 1, f); } /* corpo della seconda funzione void contatto_print (struct contatto *pc, FILE *f) { } */ main(){ FILE *frp; FILE *fwp; frp=fopen("contatto1.bin", "rb"); fwp=fopen("contatto.txt", "rt"); link = malloc(sizeof(struct contatto)); if (frp==NULL || fwp==NULL){ printf("errore nell'apertura di un file"); system("pause"); exit(1); } contatto_read_bin (link, frp); printf("i valori letti dal file sono: \nnome: %s \ncognome: %s \nnumero di telefono: %s.\n", link->nome, link->cognome, link->telefono); system("pause"); /* contatto_print (pc, fwp); */ }

Rispondi quotando
