Erreur lors de l'éxecution
Fermé
tessa90
Messages postés
4
Date d'inscription
vendredi 18 février 2011
Statut
Membre
Dernière intervention
22 février 2011
-
22 févr. 2011 à 20:25
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 - 22 févr. 2011 à 22:10
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 - 22 févr. 2011 à 22:10
A voir également:
- Erreur lors de l'éxecution
- Erreur d'execution 1004 - Forum Programmation
- Erreur 1004 vba ✓ - Forum VB / VBA
- Erreur d'execution 13 vba ✓ - Forum Programmation
- Erreur 1000 france tv - Forum MacOS
- Youtube une erreur s'est produite ✓ - Forum YouTube
2 réponses
jisisv
Messages postés
3645
Date d'inscription
dimanche 18 mars 2001
Statut
Modérateur
Dernière intervention
15 janvier 2017
946
Modifié par jisisv le 22/02/2011 à 21:27
Modifié par jisisv le 22/02/2011 à 21:27
C'est à la compilation qu'apparaît l'erreurn je présume !
J'ai repris ton code avec les fichiers en-tête adéquats:
Si ta fonction se trouve dans un plus gros fichier l'erreur se trouve vraissemblablement en-deçà du code exposé.
Johan
Gates gave ^H sold you the windows.
GNU gave us the whole house.(Alexandrin)
J'ai repris ton code avec les fichiers en-tête adéquats:
#include <stdlib.h> #include <stdio.h> #include <string.h> #include <time.h>et cela compile sans problème sous gcc.
Si ta fonction se trouve dans un plus gros fichier l'erreur se trouve vraissemblablement en-deçà du code exposé.
Johan
Gates gave ^H sold you the windows.
GNU gave us the whole house.(Alexandrin)
tessa90
Messages postés
4
Date d'inscription
vendredi 18 février 2011
Statut
Membre
Dernière intervention
22 février 2011
22 févr. 2011 à 21:31
22 févr. 2011 à 21:31
Non je compile avec Emacs (gcc ...) et ça marche ! L'erreur apparaît lors de l'éxecution et elle n'apparaissait pas la semaine dernière (alors que je n'ai pas touché à mon code depuis).
Voilà le code en entier si jamais tu arrives à trouver la fameuse erreur:
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>
void melanger (char * mot){
int longueur_mot=0,longueur_temp=0, c=0;
char* temp=NULL;
char car_hasard;
longueur_mot=strlen(mot);
longueur_temp=longueur_mot;
temp=malloc(longueur_temp*sizeof(char));
strcpy(temp,mot);
srand((unsigned int) time(NULL));
while(longueur_temp!=0){
c=rand()%(longueur_temp);
car_hasard=temp[c];
temp[c]=temp[longueur_temp-1];
temp[longueur_temp-1]='\0';
longueur_temp=strlen(temp);
printf("%c", car_hasard);
}
printf("\n");
}
char * un_mot(){
char * dico[5];
char * mot = NULL;
int position;
srand((unsigned int) time(NULL));
dico[0]="bonjour";
dico[1]="lapin";
dico[2]="collier";
dico[3]="maison";
dico[4]="soleil";
position=rand()%5;
mot=dico[position];
return mot;
}
int main(){
char* mot=NULL;
char reponse_donnee[30];
mot=un_mot();
printf("%s\n",mot);
printf("Le mot mélangé est : \n");
melanger(mot);
printf("Quelle est votre réponse ? \n");
scanf("%29s",reponse_donnee);
printf("Votre réponse est : %s \n",reponse_donnee);
printf("La bonne réponse est : %s \n",mot);
if(strcmp(reponse_donnee,mot)!=0)
printf("Vous avez perdu ! \n");
else
printf("Bravo, vous avez gagné ! \n");
return 0;
}
Voilà le code en entier si jamais tu arrives à trouver la fameuse erreur:
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>
void melanger (char * mot){
int longueur_mot=0,longueur_temp=0, c=0;
char* temp=NULL;
char car_hasard;
longueur_mot=strlen(mot);
longueur_temp=longueur_mot;
temp=malloc(longueur_temp*sizeof(char));
strcpy(temp,mot);
srand((unsigned int) time(NULL));
while(longueur_temp!=0){
c=rand()%(longueur_temp);
car_hasard=temp[c];
temp[c]=temp[longueur_temp-1];
temp[longueur_temp-1]='\0';
longueur_temp=strlen(temp);
printf("%c", car_hasard);
}
printf("\n");
}
char * un_mot(){
char * dico[5];
char * mot = NULL;
int position;
srand((unsigned int) time(NULL));
dico[0]="bonjour";
dico[1]="lapin";
dico[2]="collier";
dico[3]="maison";
dico[4]="soleil";
position=rand()%5;
mot=dico[position];
return mot;
}
int main(){
char* mot=NULL;
char reponse_donnee[30];
mot=un_mot();
printf("%s\n",mot);
printf("Le mot mélangé est : \n");
melanger(mot);
printf("Quelle est votre réponse ? \n");
scanf("%29s",reponse_donnee);
printf("Votre réponse est : %s \n",reponse_donnee);
printf("La bonne réponse est : %s \n",mot);
if(strcmp(reponse_donnee,mot)!=0)
printf("Vous avez perdu ! \n");
else
printf("Bravo, vous avez gagné ! \n");
return 0;
}
jisisv
Messages postés
3645
Date d'inscription
dimanche 18 mars 2001
Statut
Modérateur
Dernière intervention
15 janvier 2017
946
Modifié par jisisv le 22/02/2011 à 22:10
Modifié par jisisv le 22/02/2011 à 22:10
Effectivement
Peux-tu reproduire le bug ?
Johan
johand@osiris:~/src/ccm$ gcc -Wall ana.c ;echo $? 0
Peux-tu reproduire le bug ?
Johan