Problème de compilation
Résolu/Fermé
A voir également:
- Problème de compilation
- Breach compilation - Guide
- Compilation année 80 télécharger gratuit - Forum Musique / Radio / Clip
- Compilation error: expected ')' before ';' token ✓ - Forum C
- Compilation error: expected unqualified-id before '{' token ✓ - Forum C++
- Microsoft visual basic pour applications erreur de compilation ✓ - Forum Bureautique
4 réponses
NHenry
Messages postés
15172
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
11 décembre 2024
350
25 juin 2016 à 20:30
25 juin 2016 à 20:30
"start" est déclarée sur la portée de "if(mind)" donc inaccessible dans le if suivant.
Sugel
Messages postés
4076
Date d'inscription
jeudi 18 août 2011
Statut
Membre
Dernière intervention
19 juin 2017
725
Modifié par Sugel le 25/06/2016 à 23:02
Modifié par Sugel le 25/06/2016 à 23:02
Ce n'est pas possible, car tu peux ne pas rentrer dans le premier if, mais rentrer dans le second, auquel cas start n'est pas défini.
Si c'était le cas, alors le second if n'aurait pas de raison d'être !
comme le dit NHenry, tu fois définir ta variable avant le premier if.
Attention à bien l'initialiser avant de l'utiliser.
Avant d'écrire un message, pensez que nous sommes là par passion, et par espoir de vous la communiquer: Si c'est pas génial, ça !
Si c'était le cas, alors le second if n'aurait pas de raison d'être !
comme le dit NHenry, tu fois définir ta variable avant le premier if.
Attention à bien l'initialiser avant de l'utiliser.
Avant d'écrire un message, pensez que nous sommes là par passion, et par espoir de vous la communiquer: Si c'est pas génial, ça !
paly2
Messages postés
254
Date d'inscription
vendredi 29 août 2014
Statut
Membre
Dernière intervention
15 février 2018
25
26 juin 2016 à 11:43
26 juin 2016 à 11:43
En C, les variables sont déclarées par "bloc". Un bloc est une portion de code contenant plusieurs instructions (ou une, mais ça n'a pas d'intérêt d'utiliser un bloc quand on n'y met qu'une seule instruction) délimitée par des accolades. Tu peux faire des blocs n'importe où, pas forcément après des if des while, des case, des for etc.
Une variable déclarée dans un bloc est automatiquement détruite à la fin du bloc.
Donc, pour que ton code compile, il faut que tu déclares start dans un bloc supérieur à celui du if, donc par exemple juste avant le if.
Une variable déclarée dans un bloc est automatiquement détruite à la fin du bloc.
Donc, pour que ton code compile, il faut que tu déclares start dans un bloc supérieur à celui du if, donc par exemple juste avant le if.
Utilisateur anonyme
26 juin 2016 à 16:42
26 juin 2016 à 16:42
Merci à tous, c'est réglé (j'ai déclaré la variable avant le if).
Modifié par EchoIsON le 25/06/2016 à 20:32
Pourtant si le compilateur acceptait de compiler, ce programme fonctionnerait.
Modifié par NHenry le 25/06/2016 à 20:37