salve a tutti
dovrei realizzare due programmi...il primo dati 2 file uno di imput e uno di output analizza il file di imput e scrive sul file di output tutti gli indirizzi e-mail trovati(i quali devono essere privi di caratteri come ',' o ')' )
il file seguente è questo:
Partecipanti:
1. Andrea Rossi, FUll Professor of Computer Science
phone: +390432 55 5555, fax: +39 0432 55 5555
e-mail: Rossi@DIES.UNIXX:IT
2. Mario De Rossi, PhD, Assistant Professor, e-mail: derossi@unixx.com,
3. Serena Verdi, PhD Student in Computer Engineering
phone: +39 0432 55 5555, fax: +39 55 5555
(e-mail: s.verdi@unixx.it),
4. Tom Gialli, PhD Student in Computer Engineering
phone: +39 0432 55 5555, fax: +39 55 5555, e-mail: t.gialli@unixx.it
e questo è il codice che ho realizzato:
la mia idea era quella di controllare le singole stringhe alla ricerca di '@' ma il compilatore mi da warning:format argument is not a pointer e return makes integer from pointer without a cast...se qualcuno ha qualche idea grazie millecodice:#include <stdio.h> #include <stdlib.h> #include <string.h> char Restituisci_Mail(char stringa[]) { int i; for(i=strlen(stringa);i>=0;i--) { if((stringa[i]=='M')||(stringa[i]=='m')||(stringa[i]=='T')||(stringa[i]=='t')) stringa[i+1]='\0'; } return stringa; //quì mi da errore } int Stampa_Mail(char nome_file_in[20],char nome_file_out[20]) { FILE *fp1; FILE *fp2; char stringa[20]; int i=0,j,n=0; if((fp1=fopen(nome_file_in,"r"))==NULL) { printf("il file non può essere aperto"); exit(1); } else fp2=fopen(nome_file_out,"w"); while((fscanf(fp1,"%s",stringa))!=EOF) { i=strlen(stringa); for(j=0;j<i;j++) { if(stringa[i]=='@') { fprintf(fp2,"%s",Restituisci_Mail(stringa)); //quì mi da errore n++; } i=0; } fclose(fp1); fclose(fp2); } return n; } int main(int argc,char *argv[]) { if(argc!=3) { printf("manca il nome del file"); exit(1); } printf("%d",Stampa_Mail(argv[1],argv[2])); return 0; }
ah specifico che con il primo for intendo controllare quando tagliare la stringa con il '\0' e quindi certo t e m che stanno per .it e .com


Rispondi quotando