4.4. Muuttujan arvon asettaminen Set-komennolla

Muuttujaa ei tarvitse erikseen esitellä muuttujaksi. Muuttuja syntyy, kun siihen laitetaan jokin arvo. Muuttujille annetaan arvot set-komennolla, jolle annetaan ensimmäisenä parametrina muuttujan nimi ja toisena parametrina muuttujaan sijoitettava arvo. Arvoa ei ole pakko antaa, mutta silloin muuttujan arvo ei muutu ja set -komento palauttaa vain muuttujan nykyisen arvon.

Esimerkiksi komentojen

set elukka "koira"

=>koira

set elukka

=>koira

jälkeen muuttujassa elukka on arvo koira. Kun muuttujaan sijoitetaan arvo eli viitataan sen nimeen, kirjoitetaan pelkkä muuttujan nimi, kuten edellisessä kome nnossa. Jos halutaan viitata muuttujan arvoon, laitetaan muuttujan nimen eteen dollarimerkki $.

Esimerkin

set elukka2 "$elukka"

=>koira

jälkeen muuttujassa elukka2 on myös arvo koira. Muuttujien avulla voi myös yhdistellä useampien muuttujien arvoja yhdeksi arvoksi, kuten seuraavassa esim erkissä:

set elukka2 "jänis"

set karvajalka "$elukka2$elukka"

=>jäniskoira

Käyttämällä heittomerkkejä voi muuttujaan laittaa arvon, joka sisältää välilyöntejä. Heittomerkkien sisällä ei myöskään puolipisteellä ole komen non vaihtumisen merkitystä. Muuttujan arvoon voi viitata heittomerkkien sisällä missä tahansa, kuten seuraavassa esimerkissä on tehty:

set nimi "Matti Meikäläinen"

set osoite "Meikäkuja 5"

set tiedot "Nimi: $nimi; osoite: $osoite"

=> Nimi: Matti Meikäläinen; osoite: Meikäkuja 5

Muuttujan voi hävittää komennolla unset, jolloin sen arvoon ei voi enää viitata ja sen viemä tila vapautuu keskusmuistista. Jos koneessa on muistia vähän, kannat taa isossa ohjelmassa tarpeettomia muuttujia hävittää silloin, kun niitä on paljon. Komennolle unset voi antaa parametrina yhden tai useamman muuttujan nimen. Esimerkissä

unset tiedot

unset nimi osoite

häviävät muuttujat tiedot, nimi ja osoite.

Muuttuja voi olla globaali (engl. global) tai paikallinen (engl. local). Globaaliin muuttujaan voidaan viitata missä tahansa kohtaa ohjelman koodissa, kun taas paikalliseen muuttujaan vain siinä aliohjelmassa, jo ssa se on luotu sijoittamalla siihen arvo. Paikalliset muuttujat pysyvät elossa vain aliohjelman suorituksen ajan ja ne häviävät (vertaa unset-komento) aliohjelman suorituksen päättyessä. Aina kun muuttuja luodaan, siitä tulee paikallinen muuttuja, ellei sitä olla erikseen esitelty globaaliksi muuttujaksi. Muuttuja esitellään globaaliksi komennolla global, kuten seuraavassa esimerkissä:

global yleinen_muuttuja

set yleinen_muuttuja "jokin arvo"

=>jokin arvo

Globaalin muuttujan voi hävittää kesken ohjelman suorituksen komennolla unset. Luvussa 4.8 kerrotaan lisää globaalien muuttujien käytöstä.


previous gif next gif


Luk-tutkielma: Tcl/Tk -opiksi ja iloksi.