ilfe98
Utente Èlite
- Messaggi
- 3,083
- Reazioni
- 1,317
- Punteggio
- 134
C'è un esercizio che definita una funzione:
extern int accodaTuttiFile(const char *fileConNomi, const char *fileOutput)
devo aprire in modalità tradotta fileconnomi questo file contiene nomi di file(riga per riga es: file 1.txt\n file2.txt.\n) da aprire successivamente in modalità lettura binaria e copiare ogni singolo byte alla fine del fileOutput e ritornare il numero dei file letti.
ho fatto questa funzione,ma non va sapreste correggermi?
extern int accodaTuttiFile(const char *fileConNomi, const char *fileOutput)
devo aprire in modalità tradotta fileconnomi questo file contiene nomi di file(riga per riga es: file 1.txt\n file2.txt.\n) da aprire successivamente in modalità lettura binaria e copiare ogni singolo byte alla fine del fileOutput e ritornare il numero dei file letti.
ho fatto questa funzione,ma non va sapreste correggermi?
C:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
extern int accodaTuttiFile(const char *fileConNomi, const char *fileOutput) {
FILE *fin = fopen(fileConNomi, "rt");
if (!fin)
return 0;
FILE *fout = fopen(fileOutput, "wb");
if (!fout)
return 0;
char temp[255];
int len = 0;
int ret = 0;
while(fgets(temp, 255, fin)!=NULL)
{
temp[strcspn(temp, "\n")] = 0;
FILE *f = fopen(temp, "rb");
fseek(f, 0, SEEK_END);
len = ftell(f);
rewind(f);
fread(fout, sizeof(char), len, f);
ret++;
}
return ret;
}