Nedefinovaná hodnota
Není-li skalární proměnné přiřazena při její definici žádná hodnota, pak o ní říkáme, že obsahuje nedefinovanou hodnotu. Nedefinovaná hodnota říká také to, že neexistuje skutečná hodnota což lze využít mimo jiné také pro označení chybového stavu například v případě, kdy chceme pracovat s neexistujícím prvkem pole nebo jsme při čtení souboru došli na konec.K určení, zda je skalární hodnota definována, slouží operátor defined, kterému jako argument předáme příslušnou proměnnou nebo výraz. Pokud zjišťujeme pole nebo hashe, poté výsledek závisí na tom, je-li je pro danou proměnnou alokován prostor v paměti. Přiřazení nedefinované hodnoty do pole má za následek vznik pole o jednom prvku, jehož hodnota je nedefinovaná.
Vestavěná funkce undef vrací nedefinovanou hodnotu a tu je také možné použít v přiřazování pro zrušení hodnoty proměnné nebo jako návratovou hodnotu funkce indikující neúspěch.
Čísla
Perl rozlišuje dva typy čísel - čísla celá a čísla v pohyblivé desetinné čárce. Interně je ovšem vždy ukládá jako čísla s pohyblivou desetinnou čárkou s dvojnásobnou přesností. Pro oddělení celé a desetinné části se používá pouze tečka, čárka slouží jako operátor oddělující jednotlivé prvky seznamu. Kdekoliv mimo začátek lze použít pro zvýšení čitelnosti znaku podtržítka a to v libovolné počtu. Toho lze ovšem využít pouze při psaní programu. Pokud jsou čísla získávaná jiným způsobem, například čtením ze souboru, pak se jako číslo bere pouze část po první podtržítko. Šestnáctková a osmičková čísla, která mají na začátku 0x nebo 0 jsou rozpoznávaná pouze v případě, že se jedná o literály. Chceme-li k takovým číslům přistupovat v dané soustavě, je nutné použít konverzní funkce hex nebo oct. Číselné hodnoty lze zapisovat několika způsoby. Přehled možných zápisů shrnuje následující tabulka.Hodnota | Význam |
---|---|
12345 | Kladné celé číslo |
-456 | Záporné celé číslo |
123.456 | Desetinné číslo |
456E16 | Číslo v semilogaritmickém tvaru |
0xFF,0X3E | Šestnáctkové číslo |
0b000111 | Binární číslo |
1___234__4_5_6 | S podtržítky pro zvýšení čitelnosti |
0xFF__DD___EE | S podtržítky pro zvýšení čitelnosti |
V dalším díle se podíváme na další skalární datové typy. V případě jakýchkoliv dotazů mě kontaktujte na email: habrman@banan.cz.
Autor: Robert Habrman