green mamba
Messages postés8Date d'inscriptiondimanche 20 novembre 2005StatutMembreDernière intervention18 janvier 2009
-
17 janv. 2009 à 12:02
green mamba
Messages postés8Date d'inscriptiondimanche 20 novembre 2005StatutMembreDernière intervention18 janvier 2009
-
17 janv. 2009 à 21:11
Bonjour à tous!
voilà, j'ai refait un code de tri (je me suis légèrement inspiré d'un cs présent ici, je code plutôt mal en général), et je voudrais récuperer la liste générée par ce tri dans un .txt (doit trier plus de 10 000 adresses).
Je voudrais également supprimer les doublons dans cette liste dans un second temps, mais on y est pas encore!
donc voilà, j'ai " formatté " toute ma liste de la sorte à les mettre dans un tableau.
voilà le script à ce moment (affichage simple, pas de fichier!!!):
void tri_iteratif(char *tableau[], int taille)
{
char *temp;
int i, j;
for (i = 0; i < taille; i++)
for (j = 0; j < taille; j++)
if (strcmp(tableau[i], tableau[j]) < 0)
{
temp = tableau[i];
tableau[i] = tableau[j];
tableau[j] = temp;
}
}
void main(void)
{
FILE *hFile = NULL;
int codeRetour = 0;
hFile = fopen(NOM_FIC, "w");
if (hFile == NULL)
{
perror("Erreur");
(void)fprintf(stderr,"Impossible d'ouvrir %s en ecriture\n",NOM_FIC);
exit(EXIT_FAILURE);
}
char *valeurs[] = {"efdefef@msn.com", ....};
int i;
int len=10092;
tri_iteratif(valeurs, len);
for (i = 0; i < len; i++)
{
codeRetour = fputs("%s\n", valeurs[i], hFile); // problème à ce niveau, je ne peut pas enregistrer une chaine de caractere???
if (codeRetour == EOF)
{
perror("Erreur");
(void)fprintf(stderr,"Impossible d'ecrire dans %s\n",NOM_FIC);
exit(EXIT_FAILURE);
}
printf("%s\n", valeurs[i]);}
codeRetour = fclose(hFile);
if (codeRetour == EOF)
{
perror("Erreur");
(void)fprintf(stderr,
"Impossible de fermer correctement %s\n",
NOM_FIC);
exit(EXIT_FAILURE);
}
(void)printf("texte ecrit dans %s, sortie normale\n",
NOM_FIC);