[C] exécution d'un if une seule fois

Résolu/Fermé
KunGu Messages postés 1168 Date d'inscription vendredi 7 septembre 2007 Statut Membre Dernière intervention 17 mars 2013 - 16 mars 2011 à 20:42
KunGu Messages postés 1168 Date d'inscription vendredi 7 septembre 2007 Statut Membre Dernière intervention 17 mars 2013 - 16 mars 2011 à 21:03
Bonjour tout le monde,
J'ai une petite question concernant mon code en C.
Je fais appel a une fonction init.c depuis mon main.c.
Je commande un moteur qui doit s'arreter de tourner (mettre variable moteur=0) quand un capteur s'enclenche (quand la variable capteur = 1)

Seulement, dès que la variable capteur revient a 0, mon instruction if remet en route le moteur, alors que je veux que ma fonction init.c ne s'exécute qu'une seule fois.

Auriez-vous une idée de comment stopper l'exécution de cette fonction ?

Merci beaucoup



2 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
16 mars 2011 à 20:56
Bonjour,
Tu utilises une variable test. Par exemple : static int dejaFait; Dès que tu vas dans dans if, tu mets dejaFait à 1. Et dans tes if tu fais une condition supplémentaire sur dejaFait.

Cdlt,
0
KunGu Messages postés 1168 Date d'inscription vendredi 7 septembre 2007 Statut Membre Dernière intervention 17 mars 2013 224
16 mars 2011 à 21:03
Le pire c'est que c'est tout con, merci beaucoup !
0