La commande test(1) permet d'évaluer une expression passée en paramètre. Elle retourne:
0
si l'expression passée en argument est vraie1
si l'expression passée en argument est fausse
Rem : N'oubliez pas qu'en C, l'entier qui représente le booléen "faux" est 0 et tous les autres entiers représentent le booléen "vrai". C'est donc l'inverse par rapport à la commande test(1) qui est en fait une fonction bash (shell).
On vous demande d'écrire un sous-ensemble de la commande test(1) en C. Les expressions à implémenter sont -eq
, -ge
, -gt
, -le
, -lt
et -ne
.
Pour rappel, la commande test(1) est décrite dans la page de manuel qui lui est consacrée.
Pour répondre à cette question, vous devez structurer votre programme avec des appels de sous-fonctions et donc de ne pas faire toute l'exécution dans la fonction main()
.
Rem : Si vous le souhaitez, il existe plusieurs façons pour tester votre code depuis le shell. Une de ces façons est de regarder dans le shell le contenu de la variable $?
après chaque exécution de votre programme. Une autre façon est de profiter de l'instruction conditionnelle if-then-else
du shell.