Le 16/09/06 9:34, dans <450ba904$0$25936$, « » a écrit :
int running_chronometer = FALSE; // 0 false ; -1 true Autant utiliser le type boll de <stdbool.h>
oui moi j'ai mis des #DEFINE pour TRUE(-1) et FALSE(0)
Surtout que TRUE vaut généralement 1 et pas -1. Les calculs booléens en C donnent 0 et 1 et pas -1 ou 42.
Ah ! j'avais pris c'est define dans un exemple sur le net
Internet est plein de mauvais exemples.
le fait de mettre -1 pour TRUE ne fait il pas passer tous les bits à 1 dans le cas d'un entier non signé ?
-1 met tous les bits à 1 sur sur un entier signé et si le CPU utilise la notation complément à 2.
Mais comme je l'ai dit en C une expression du type "(a == b)" est une expression booléenne qui vaut 0 ou 1.
mais j'ai regardé et j'ai bien un fichier stdbool.h...
Alors tout n'est pas perdu.
-- Éric Lévénez -- <http://www.levenez.com/> Unix is not only an OS, it's a way of life.
Eric Levenez
Le 16/09/06 9:23, dans <450ba658$0$27373$, « » a écrit :
Désolé mais parler de portabilité pour un microcontrôleur je trouve ça assez comique ;-)
Non ce n'est pas comique. Regarde par exemple comment afficher ton timer avec printf, tu peux faire ce printf de façon portable ou non portable.
il y a tellement de trucs non portable dans mon code (initialisations de registres en particulier)
Bien sûr tout ce qui concerne les entrées/sortie sont non portables. C'est pour cela que d'habitude cette partie est codée dans un source bien à part de la partie portable. Si tu changes de CPU, il suffira de changer un seul fichier, les autres étant portables, n'auront aucun changement.
-- Éric Lévénez -- <http://www.levenez.com/> Unix is not only an OS, it's a way of life.
Le 16/09/06 9:23, dans <450ba658$0$27373$ba4acef3@news.orange.fr>,
« noone@nowhere.undef » <noone@nowhere.undef> a écrit :
Désolé mais parler de portabilité pour un microcontrôleur je trouve ça
assez comique ;-)
Non ce n'est pas comique. Regarde par exemple comment afficher ton timer
avec printf, tu peux faire ce printf de façon portable ou non portable.
il y a tellement de trucs non portable dans mon code
(initialisations de registres en particulier)
Bien sûr tout ce qui concerne les entrées/sortie sont non portables. C'est
pour cela que d'habitude cette partie est codée dans un source bien à part
de la partie portable. Si tu changes de CPU, il suffira de changer un seul
fichier, les autres étant portables, n'auront aucun changement.
--
Éric Lévénez -- <http://www.levenez.com/>
Unix is not only an OS, it's a way of life.
Le 16/09/06 9:23, dans <450ba658$0$27373$, « » a écrit :
Désolé mais parler de portabilité pour un microcontrôleur je trouve ça assez comique ;-)
Non ce n'est pas comique. Regarde par exemple comment afficher ton timer avec printf, tu peux faire ce printf de façon portable ou non portable.
il y a tellement de trucs non portable dans mon code (initialisations de registres en particulier)
Bien sûr tout ce qui concerne les entrées/sortie sont non portables. C'est pour cela que d'habitude cette partie est codée dans un source bien à part de la partie portable. Si tu changes de CPU, il suffira de changer un seul fichier, les autres étant portables, n'auront aucun changement.
-- Éric Lévénez -- <http://www.levenez.com/> Unix is not only an OS, it's a way of life.