Successivo: Tipi di variabile e confronti, Su: Valori e condizioni di verità [Contenuti][Indice]
awk
Molti linguaggi di programmazione hanno una particolare rappresentazione per i
concetti di “vero” e “falso.” Questi linguaggi usano normalmente le
costanti speciali true
e false
, o forse i loro equivalenti
maiuscoli.
Però awk
è differente.
Prende in prestito un concetto molto semplice di vero e falso dal linguaggio
C. In awk
, ogni valore numerico diverso da zero oppure
ogni valore di stringa non vuota è vero. Ogni altro valore (zero o la stringa
nulla, ""
) è falso. Il seguente programma stampa ‘Uno strano
valore di verità’ tre volte:
BEGIN { if (3.1415927) print "Uno strano valore di verità" if ("Ottanta e sette anni or sono") print "Uno strano valore di verità" if (j = 57) print "Uno strano valore di verità" }
C’è una conseguenza sorprendente della regola “non zero o non nullo”:
la costante di stringa "0"
sta effettivamente per vero, perché
è non nulla.
(a.b.)