...
Muuttujiin talletaan tiedot, joita ohjelma käsittelee. Tieto voi olla lukuja ja merkkejä, tieto voi olla esitetty yksittäinä arvoina , vektoreina tai taulukkomuodossa.
Muuttujat ovat siis tietovarastoja, tietovarastot ovat erilaiselle tiedolle erikokoisia.
Siksi C-kielessä tiedolla on aina tyyppi, tyyppi kertoo muuttujan tarvitseman muistin määrän. Tietokoneen muistia kuvataan tavuilla. Tavun pituus on kahdeksan bittiä. Kahdeksalla bitillä voidaan kuvata luvut 0...255 tai -128...+127.
Esimerkiksi ASCII-taulukossa, joka sisältää tietokoneen esittämät merkit, jokainen kirjoitettava merkki edustaa lukua 0...255. Täten yksi merkki varaa tietokoneelta muistia yhden tavun. (UNIUunicode-koodissa merkistössä merkkit esitetään esitetään kahdella tavulla, jollin jolloin voidaan esittää 65535, jolloin miltei kaikki maailman merkit saadaan esitettyä ilman erillisiä kooditaulukoita)
C-kielen muuttujien tyypit:
tyyppi | merkitys | etumerkitön lukualue | etumerkillinen lukualue |
---|---|---|---|
| merkki | 0...255 | -128...+127 |
| lyhyt kokonaisluku | 0...65536 | -32767...+32768 |
| kokonaisluku | 0...4294967296 | -2147483647...+2147483648 |
| pitkä kokonaisluku | 0...18446744073709551615 | -9223372036854775808...+9223372036854775807 |
| reaaliluku | ? | ? |
| kaksoistarkkuuden reaaliluku | ? | ? |
| tavuosoitin (voidaan ajatella, että tämä ei tarkoita mitään) | - | - |
Muuttujan tyyppi kertoo sen, millaista tietoa muuttujaan voi tallentaa, esimerkiksi char OmaMuuttuja
voi tallettaa yhden merkin.
Eli muuttujaan OmaMuuttuja
voidaan sijoittaa yksi merkki, esimerkiksi,:
Code Block |
---|
char OmaMuuttuja = 'a'; // huom\! yksittäiset merkit laitetaan heittomerkkien väliin. |
Toinen esimerkki.:
Code Block |
---|
int iLukuLuku = 5; // kokonaislukumuuttuja, joka voi tallettaa etumerkillisen luvun |
Muuttuja voidaan haluttaessa myös alustaa esittelyn yhteydessä, esim.
Code Block |
---|
int Luku=5;
char Merkki='a';
|
Muuttujalle voidaan antaa lisämääreitä:
Määre | Merkitys | Käy seuraaviin tyyppeihin |
---|---|---|
| etumerkillinen | char, int |
| etumerkitön | char, int |
| pitkä | int |
| lyhyt | int |
Esim.
Code Block |
---|
unsigned int Luku = 65535; // Muuttuja voi olla ainoastaan positiivinen kokonaisluku
|
Lisämääreillä tarkennetaan tyyppiä. Lisämääreiden merkitys on kääntäjäkohtaista ja siksi ne on syytä tarkastaa ko. kääntäjän käsikirjoista.
Muuttujan nimeäminen
Muuttuja kannattaa nimetä selkeällä nimellä, joka kertoo muuttujan käyttötarkoituksen. Huom! isot ja pienet kirjaimet tarkoittavat eri asiaa.
Puhdas C-kielen esittelytapa on seuraava:
...
Muuttujan eri sanat voidaan erotella erotella toisistaan esimerkiksi alaviivalla.
...
Code Block |
---|
int AutonNopeus; |
Monet ohjelmoitsijat ohjelmoijat liittävät muuttujan eteen kirjaimen kuvaamaan muuttujan tyyppiä seuraavasti:
...