|
Najprostszym rodzajem zmiennych w Perlu są zmienne skalarne. Mogą one przechowywać wartości liczbowe jak i łańcuchy znaków. Dużą zaletą zmiennych w perlu jest to, że są one kompletnie zamienne. Na przykład, instrukcja
$priority = 9; ustawia wartość zmiennej $priority na 9, ale można także przypisać łańcuch do dokładnie tej samej zmiennej:
$priority = 'high'; Perl także akceptuje liczby jako łańcuchy znakowe, takie jak:
$priority = '9'; $default = '0009'; i może jeszcze sobie poradzić z operacjami arytmetycznymi i nie tylko dość dobrze. Ogólnie nazwy zmiennych zawierają cyfry, litery i podkreślenia, ale nie mogą zaczynać się cyfrą. Zmienna $_ jest zastrzeżona, ale ona zostanie omówiona później. Poza tym Perl rozpoznaje wielkie i małe litery, więc $a i $A to dwie różne zmienne.
1. Operacje i operatory.Perl używa wszystkich zwykłych operatorów arytmetycznych języka C $a = 1 + 2; # dodaj 1 i 2, a wynik zachowaj w zmiennej $a $a = 3 - 4; # odejmij 4 od 3, a wynik zachowaj w zmiennej $a $a = 5 * 6; # pomnóż 5 przez 6, a wynik zachowaj w zmiennej $a $a = 7 / 8; # podziel 7 przez 8 a wynik 0.875 zachowaj w zmiennej $a $a = 9 ** 10; # podnieś 9 do potęgi 10 i zachowaj w zmiennej $a $a = 5 % 2; # resztę z dzielenia 5 przez 2 zachowaj w zmiennej $a ++$a; # zwiększ $a o 1 i potem zwróć wartość $a++; # zwróć wartość $a i potem zwiększ o 1 --$a; # zmniejsz $a o 1 i potem zwróć wartość $a--; # zwróć wartość $a i potem zmniejsz o 1 zaś w przypadku łańcuchów $a = $b . $c; # łączy $b i $c i zachowuje to w zmiennej $a $a = $b x $c; # $b powtarza $c razy i zachowuje to w zmiennej $a Do przypisania wartości Perl używa $a = $b; # przypisz $b do $a $a += $b; # dodaj $b do $a $a -= $b; # odejmij $b od $a $a .= $b; # dopisz $b do $a Linia zawierająca wartość $a=$b robi kopię $b i potem zapisuje ją do $a. Dlatego jeśli zmieni się $b to nie zmieni się $a. Inne operatory można znaleźć po wpisaniu komendy man perlop (Unix), która wywoła opis wszystkich możliwych operacji.
2. Interpolacja.Poniższy przykład wyświetli napis koła i kwadraty poprzez wykorzystanie operacji łączenia:
$a = 'koła'; $b = 'kwadraty'; print $a.' i '.$b; Byłoby ładniej, gdyby użyło się jednego łańcucha w ostatniej linii, ale linia
print '$a i $b'; wyświetli komunikat $a i $b, który nie jest zamierzony. Zamiast tego można użyć podwójnego cudzysłowu w miejsce pojedynczego:
print "$a i $b"; Podwójny cudzysłów wymusza interpolacje kodu, włączając interpretację zmiennych. To rozwiązanie jest lepsze niż pierwsze. Inne kody, które są interpolowane zawierają znaki specjalne takie jak przejście do nowej linii i tabulacja. Kod jest przejściem do nowej linii, a kod to tabulacja.
|