- #include<stdio.h>
- #include<stdlib.h>
- #include<conio.c>
-
- int h,l; // hauteur et largeur de l'image
-
- /*************************************************************************************************/
- /* fonction lire_image() qui lit le fichier image */
- /* */
- /*************************************************************************************************/
-
- unsigned char *lire_image(void)
- {
-
- FILE*fp;
-
- char nom[80]; //nom du fichier a creer
- unsigned char *vec ; //pointeur sur le fichier dans la memoire retourner par la fonction
-
-
- printf("donner la largeur et la hauteur du fichier\n"); //saisie de la taille dun fichier
- scanf("%d%d",&l,&h);
-
-
- printf("donner le nom du fichier a ouvrire\n"); //saisie du nom et emplacement du fichier a creer
- scanf("%s",&nom);
-
- fp=fopen(nom,"rb"); //ouverture du fichier en mode rb
-
-
- if(!fp)
- { printf("\aimpossible d'ouvrire le fichier \n");
- exit(0);
- }
-
- vec=(unsigned char *)malloc(l*h); //allocation de l*h bloc
-
- fread(vec,sizeof(unsigned char),l*h,fp);
- fclose(fp); //fermeture du fichier
-
- return vec; // pointeur retourner
- }
-
-
- /*************************************************************************************************/
- /* fonction ecrire_image() qui ecrit le nouveau fichier crypter */
- /* */
- /*************************************************************************************************/
-
-
-
-
-
- void ecrire_image(unsigned char *imageD)
- {char nom [80];
- int a=0,b=0;
- FILE *fp;
-
- printf("nom et chemin de l'image destination\n");
- scanf("%s",&nom);
-
-
- printf("largeur et hauteur\n");
- scanf("%d%d",&a,&b);
-
- fp=fopen(nom,"wb");
- fwrite(imageD,sizeof(unsigned char),h*l,fp);
- fclose(fp);
- }
-
-
-
-
- void main()
- {
- unsigned char *image,*imageD;
- unsigned char cle=15;
- int i;
-
- initscreen();
-
- image=lire_image();
- printf("IMAGE LODER DANS LA MEMOIRE\n");
-
- for(i=0;i<l*h;i++)
- {image[i]=image[i]^cle; } /*XOR*/
-
-
- printf("image crypter\n");
-
- imageD=image;
- ecrire_image(imageD);
- printf("operation terminée\n");
-
-
-
- free(image);
- getch();
-
- }
#include<stdio.h>
#include<stdlib.h>
#include<conio.c>
int h,l; // hauteur et largeur de l'image
/*************************************************************************************************/
/* fonction lire_image() qui lit le fichier image */
/* */
/*************************************************************************************************/
unsigned char *lire_image(void)
{
FILE*fp;
char nom[80]; //nom du fichier a creer
unsigned char *vec ; //pointeur sur le fichier dans la memoire retourner par la fonction
printf("donner la largeur et la hauteur du fichier\n"); //saisie de la taille dun fichier
scanf("%d%d",&l,&h);
printf("donner le nom du fichier a ouvrire\n"); //saisie du nom et emplacement du fichier a creer
scanf("%s",&nom);
fp=fopen(nom,"rb"); //ouverture du fichier en mode rb
if(!fp)
{ printf("\aimpossible d'ouvrire le fichier \n");
exit(0);
}
vec=(unsigned char *)malloc(l*h); //allocation de l*h bloc
fread(vec,sizeof(unsigned char),l*h,fp);
fclose(fp); //fermeture du fichier
return vec; // pointeur retourner
}
/*************************************************************************************************/
/* fonction ecrire_image() qui ecrit le nouveau fichier crypter */
/* */
/*************************************************************************************************/
void ecrire_image(unsigned char *imageD)
{char nom [80];
int a=0,b=0;
FILE *fp;
printf("nom et chemin de l'image destination\n");
scanf("%s",&nom);
printf("largeur et hauteur\n");
scanf("%d%d",&a,&b);
fp=fopen(nom,"wb");
fwrite(imageD,sizeof(unsigned char),h*l,fp);
fclose(fp);
}
void main()
{
unsigned char *image,*imageD;
unsigned char cle=15;
int i;
initscreen();
image=lire_image();
printf("IMAGE LODER DANS LA MEMOIRE\n");
for(i=0;i<l*h;i++)
{image[i]=image[i]^cle; } /*XOR*/
printf("image crypter\n");
imageD=image;
ecrire_image(imageD);
printf("operation terminée\n");
free(image);
getch();
}