You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Vakiot

Sellaiset tiedot, joita ei haluta muuttaa ohjelman suorituksen aikana, kannattaa määritellä vakioiksi. Tällöin ei ole tarvetta huolehtia niiden muuttumattomuudesta. Kääntäjä tekee sen ohjelmoijan puolesta.

Paljaat vakiot

Paljaat vakiot voidaan ryhmitellä seuraavasti:

  • Numeeriset vakiot, joita ovat esim. 5, 5.0, -5, 12.4
  • Merkkivakiot, joita ovat esim. '5', 'A', 'a'
  • Merkkijonovakiot, jollainen on esim. "Turbo C"

Esimerkiksi pii ei muutu ikinä ohjelman ajon aikana.

Nimetyt vakiot

Paljaalle vakiolle voidaan antaa nimi, jota voidaan käyttää ohjelmassa kuten paljasta vakiota. Tällöin on määritelty nimetty vakio.

Nimetty vakio määritellään ohjelmassa esimerkiksi seuraavasti:

#define PII 3.14
  • Nimettyjen vakioiden määrittelyt kirjoitetaan ohjelman alkuun ennen void main(void)-riviä.
  • Nimet on tapana kirjoittaa suuraakkosin.

    On huomattava, että #define-määrittelyn jälkeen ei kirjoiteta puolipistettä.

2. tapa: const-muuttuja

Edellä mainitulla tiedolla ei kuitenkaan ole tyyppiä ja siksi varsinkin C++:ssa suositaan seuraavaa tapaa:

const int Pii = 3.14;

const avainsana kertoo että Pii onkin nyt vakio tyyppiä int.

Muuttuvan tiedon lukeminen

Kun tietoa luetaan esim. joltain laiteportilta, voidaan tehdä seuraavasti:

const volatile unsigned char *port = 0x30;

Ohjelma lukee portilta, jonka heksadesimaalinen osoite on 0x30, arvon, jonka ohjelma ymmärtää vakiona ja siten se kykenee ainoastaan käyttämään ko. muuttujan arvoa muttei muuttamaan sitä.

  • No labels
You must log in to comment.