perl:tests_if_until
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| perl:tests_if_until [2009/03/15 00:47] – root | perl:tests_if_until [2013/03/12 23:41] (Version actuelle) – root | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | ====== Tests ====== | ||
| + | |||
| ====== 1. If, else, elsif ====== | ====== 1. If, else, elsif ====== | ||
| La structure des tests et des expressions booléennes en Perl est une fois de plus très similaire à ce que l'on trouve en C : | La structure des tests et des expressions booléennes en Perl est une fois de plus très similaire à ce que l'on trouve en C : | ||
| + | <code perl> | ||
| if ($i > 0) { | if ($i > 0) { | ||
| print "$i est strictement positif\n"; | print "$i est strictement positif\n"; | ||
| } | } | ||
| + | </ | ||
| Comme pour les boucles, on peut également profiter de l' | Comme pour les boucles, on peut également profiter de l' | ||
| + | <code perl> | ||
| print "$i est un entier strictement positif\n" | print "$i est un entier strictement positif\n" | ||
| + | </ | ||
| Pour proposer une branche alternative : | Pour proposer une branche alternative : | ||
| + | <code perl> | ||
| if ($i >= 0) { | if ($i >= 0) { | ||
| print "$i est positif"; | print "$i est positif"; | ||
| Ligne 15: | Ligne 22: | ||
| print "$i est négatif"; | print "$i est négatif"; | ||
| } | } | ||
| + | </ | ||
| Par contre si l'on veut évaluer plusieurs branches (exclusives) en cascade, il y a le mot clé spécifique //elsif// : | Par contre si l'on veut évaluer plusieurs branches (exclusives) en cascade, il y a le mot clé spécifique //elsif// : | ||
| + | <code perl> | ||
| if ($i > 0) { print "$i est strictement positif"; | if ($i > 0) { print "$i est strictement positif"; | ||
| elsif ($i ====== 0) { print "$i est nul"; } | elsif ($i ====== 0) { print "$i est nul"; } | ||
| else { print "$i est négatif"; | else { print "$i est négatif"; | ||
| + | </ | ||
| C'est une erreur de syntaxe d' | C'est une erreur de syntaxe d' | ||
| Ligne 27: | Ligne 37: | ||
| Encore un emprunt du C, il doit son nom à sa spécificité: | Encore un emprunt du C, il doit son nom à sa spécificité: | ||
| + | <code perl> | ||
| my $signe = ($i >= 0) ? " | my $signe = ($i >= 0) ? " | ||
| + | </ | ||
| ... est équivalente à cette construction : | ... est équivalente à cette construction : | ||
| + | <code perl> | ||
| my $signe; | my $signe; | ||
| if ($i >= 0) { $signe = " | if ($i >= 0) { $signe = " | ||
| + | </ | ||
| ====== 3. Expressions booléennes ====== | ====== 3. Expressions booléennes ====== | ||
| Ligne 72: | Ligne 84: | ||
| Exemples : | Exemples : | ||
| - | ^ **Valeur scalaire** ^ **Valeur | + | ^ **Valeur scalaire** ^ **Valeur |
| | undef | faux| | | undef | faux| | ||
| | 0 | faux| | | 0 | faux| | ||
| Ligne 107: | Ligne 119: | ||
| Perl a emprunté les facilités du Shell pour effectuer des tests directement sur des fichiers, ce qui est très pratique et évite d' | Perl a emprunté les facilités du Shell pour effectuer des tests directement sur des fichiers, ce qui est très pratique et évite d' | ||
| + | <code perl> | ||
| my $file = " | my $file = " | ||
| die " | die " | ||
| + | </ | ||
| Pour référence, | Pour référence, | ||
| Ligne 146: | Ligne 160: | ||
| | -A | Same for access time.| | | -A | Same for access time.| | ||
| | -C | Same for inode change time (Unix, may differ for other platforms)| | | -C | Same for inode change time (Unix, may differ for other platforms)| | ||
| - | |||
perl/tests_if_until.1237078075.txt.gz · Dernière modification : de root
