Partage

cryptage fichier texte

Le 19 octobre 2009 à 15:00:59

Bonjours, pouvez vous me dire ce qui ne vas pas avec ce code ?
#include <stdio.h>
#include <stdlib.h>

FILE *fopen(const char NomFichier, const char ModeOuverture ) ;
int fclose(FILE* pointeurSurFichier);

const int DECALAGE = 5;
const int MINU = 0;
const int MAJ = 1;

//Fonction de cryptage :
void crypt(char *pointeur_chaine)
{
	int indicateur;
	if(*pointeur_chaine>='a' && *pointeur_chaine<='z')
indicateur=MINU;
	else if(*pointeur_chaine>='A' && *pointeur_chaine<='Z')
indicateur=MAJ;
	else return;

*pointeur_chaine = *pointeur_chaine + DECALAGE;

if((indicateur==MINU && *pointeur_chaine>'z')
   
   || (indicateur==MAJ && *pointeur_chaine>'Z'))
   
   *pointeur_chaine = *pointeur_chaine -26;
}


void main()
{

	FILE * source = fopen("texte.txt","r");
   FILE * crypte = fopen("crypte.txt","w");

	char *pointeur = NULL;
int compteur;

 while( pointeur_chaine = fgetc( texte ) && caractere != EOF )
   {
   crypt pointeur_chaine;
       fputc(crypt, crypte);
   }

 fclose(texte);
   fclose(crypte);
   getch();
   return 0;
}

Je voudrais crypter un fichier texte, copier et coller le texte crypté dans un autre fichier.
Merci.
Publicité
Le 19 octobre 2009 à 15:00:59
Le 20 octobre 2009 à 16:24:19

où as tu déclaré "pointeur_chaine" ?
Je ne vois nulle part la déclaration...
Le 20 octobre 2009 à 16:26:40

#include <stdio.h>
#include <stdlib.h>

FILE *fopen(const char NomFichier, const char ModeOuverture ) ;
int fclose(FILE* pointeurSurFichier);

const int DECALAGE = 5;
const int MINU = 0;
const int MAJ = 1;

//Fonction de cryptage :
void crypt(char *pointeur_chaine)
{
	int indicateur;
	if(*pointeur_chaine>='a' && *pointeur_chaine<='z')
indicateur=MINU;
	else if(*pointeur_chaine>='A' && *pointeur_chaine<='Z')
indicateur=MAJ;
	else return;

*pointeur_chaine = *pointeur_chaine + DECALAGE;

if((indicateur==MINU && *pointeur_chaine>'z')
   
   || (indicateur==MAJ && *pointeur_chaine>'Z'))
   
   *pointeur_chaine = *pointeur_chaine -26;
}


void main() /* chez moi c'est plutot int  main() */
{

	FILE * source = fopen("texte.txt","r");
   FILE * crypte = fopen("crypte.txt","w");

	char *pointeur = NULL;
int compteur; /* Inutile */

 while( pointeur_chaine = fgetc( texte ) && caractere != EOF )
   {
   crypt(pointeur_chaine); /*les () pour les appels de fonctions*/
       fputc(crypt, crypte);
   }

 fclose(texte);
   fclose(crypte);
   getch();
   return 0;
}
Le 20 octobre 2009 à 16:28:33

Tu utilises des variables non déclarées, tu ne respecte pas la priorité des opérateurs (ligne 40).
Ligne 42 je sais pas trop ce que t'as voulu faire lol -> Pour appeler une fonction c'est crypt(pointeur) :-°
Ligne 46, tu fermes un fichier qui... n'a pas été déclaré encore une fois ...
getch est une fonction de windows.h, tu as oublié de l'inclure...
Ton code n'est pas du tout indenté...
Pourquoi utiliser des variables globales en const int alors que tu pourrais utiliser des #define moins couteux ?

Ya ptete encore d'autres choses mais j'ai pas regardé ... :)
Le 20 octobre 2009 à 16:33:14

Il manque aussi la déclaration de caractere

On t'as jamais dis que tous les messages que t'affiche ton compilateur servent à quelque chose ?

Parceque là il doit hurler ...

EDIT: orthographe
Le 21 octobre 2009 à 17:49:54

Oui, mon code n'est pas bon car j'ai supprimer une partie après m'être un peu ennervé, ca fait pas mal de temps que j'essaye de faire ce programme et je n'y arrive pas... Merci en tout cas !

cryptage fichier texte

× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
  • Editeur
  • Markdown