Programma che copia l'inverso di un file in un altro

di il
1 risposte

Programma che copia l'inverso di un file in un altro

Ragazzi sto facendo un po di esercizi per l'esame di Laboratorio di Sistemi Operativi

Dovevo risolvere un esercizio che prende imput da tastiera e lo scrive in un file.Poi prende il contenuto di questo file e lo scrive all'inverso in un secondo file..

Ho prodotto questo risultato
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <fcntl.h>
#define BUFFSIZE 1000

int main (void){

  FILE *fdin,*fdout;
  int pos,contr=0;
  char buff[BUFFSIZE],c;

  fdin=fopen("File1","w+");

  fgets(buff,sizeof(buff),stdin);
  fputs(buff,fdin);

  fdout=fopen("File2","w+");

  fseek(fdin,0,SEEK_END);

  while((pos=ftell(fdin))>=0 && contr==0){
	if(pos==0){
	  contr=1;
	}
	printf("pos= %d",pos);
	c=fgetc(fdin);
	fputc(c,fdout);
        fseek(fdin,-2,SEEK_CUR);
  }

return 0;
}
Non capisco perchè alla fine della parola scritta all'inverso mi aggiiunge un carattere in più

1 Risposte

Devi accedere o registrarti per scrivere nel forum
1 risposte