indietro

  • oct ESPR
  • oct

    Interpreta ESPR come una stringa ottale, e restituisce il valore corrispondente. (Se per caso ESPR inizia con 0x, viene interpretata come una stringa esadecimale. Se ESPR inizia con 0b, viene interpretata come una stringa binaria. Qualsiasi spazio bianco che faccia da prefisso viene ingnorato in tuti e tre i casi). Il seguente codice è in grado di gestire decimali, binari, ottali ed esacimali nella notazione standard di Perl o di C:

        $val = oct($val) if $val =~ /^0/;

    Se ESPR viene omessa, oct() usa $_. Per compiere l'operazione inversa (produrre un numero ottale), usate sprintf() o printf():

        $permessi = (stat("nomefile"))[2] & 07777;
        $permessi_ottali = sprintf "%lo", $permessi;

    La funzione oct() è comunemente usata quando una stringa come 644 necessita di essere convertita affinché rappresenti per, esempio, i permessi di un file. (Benché perl converta automaticamente le stringhe in numeri quando necessario, questa conversione automatica usa la base 10).