Dev_Vernam/prgm/decodage.c

44 lines
1012 B
C
Raw Normal View History

2022-12-15 22:27:05 +01:00
#include <stdio.h>
#include <stdlib.h>
int decodage(int argc, char *argv[]) {
FILE *f_m, *f_k, *f_mdc; /* strcutures permettant, une fois FOPEN
exécuté de recupérer des informations pour manipuler les fichiers
en C */
int c;
int k1;
int calcul;
2022-12-16 12:28:09 +01:00
char * cheminFic_m = argv[2];
2022-12-15 22:27:05 +01:00
f_m = fopen(cheminFic_m, "r");
if (f_m==NULL){
printf("L'ouverture du fichier à échouer. Veuillez verifier l'existence de celui-ci.\n");
}
2022-12-16 12:28:09 +01:00
char * cheminFic_k = argv[3];
2022-12-15 22:27:05 +01:00
f_k = fopen(cheminFic_k, "r");
if (f_k==NULL){
printf("L'ouverture du fichier à échouer. Veuillez verifier l'existence de celui-ci.\n");
}
2022-12-16 12:28:09 +01:00
char * cheminFic_mdc = argv[4];
2022-12-15 22:27:05 +01:00
f_mdc = fopen(cheminFic_mdc, "w");
if (f_mdc==NULL){
printf("L'ouverture du fichier à échouer. Veuillez verifier l'existence de celui-ci.\n");
}
2022-12-16 12:28:09 +01:00
while ((c = fgetc(f_m)) != EOF)
{
k1 = fgetc(f_k);
calcul = c-k1 >= 0?c-k1:256-(c-k1);
fputc(calcul, f_mdc);
}
2022-12-15 22:27:05 +01:00
/*fermeture des fichiers*/
fclose(f_m);
fclose(f_k);
fclose(f_mdc);
return 1;
}