Successivo: Tipi di variabile e confronti, Su: Valori e condizioni di verità [Contenuti][Indice]
awkMolti 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.)