Programmeerimiskeel C/Seletus

Allikas: Vikiõpikud
Jump to navigation Jump to search

Et andmeid töödelda, peavad andmed olema mälus.

Andmeid on kahte laadi:

  • väärtusparameeter
  • viidaparameeter

Andmed on mälus 2'nd koodis, ning vastavalt andmetüübile on eraldatud vastav arv bitte. Läbi vormingu kuvatakse kasutajale imitatsioon, nagu oleks tegemist arvude, tekstiga või suvalise sisuga.

Muutujad[muuda]

Muutuja on koht mälus, kus saab väärtuseid hoida. Muutujale mälu reserveerimis protsessi nimetatakse deklareerimiseks. Muutujaid iseloomustab paindlikus, tüüp&struktuur, kogus, skoop ja väärtus.

Skoop[muuda]

muutuja eluiga/ligipääs, mis on kas

  1. lokaalne - piirdub deklareeritud fuktsiooni eluajaga ja deklareeritakse funktsiooni sees.
  2. globaalne - piirdub programmi eluajaga, ning on ligipääsetav igast funktsioonist ja deklareeritakse funktsiooni väljas.

Lisaks C++ toob veel erinevad skoope juurde, nagu üleklassiline, korduse sisene jne.

Kogus[muuda]

Koguse alusel jaotuvad andmed

  1. muutuja - andmetüübist ja arhidektuurist sõltuvalt teatud bittid, kuhu salvestatakse väärtused
  2. dimensioone omavad muutujad ehk massiivid - kogumik muutujaid. Massiivid omavad ühte kindlat andmetüüpi ja andes dimensioonile järjekorranumbri ehk indeksi, pääsetakse ligi andmetele, mis on eraldatud mäluväljale kirjutatud. Massiivi, mis omab ühte dimensiooni nimetatakse vektoriks ja kahte dimensiooni maatriksiks.

Andmetüübid[muuda]

Peamised andmetüübid on:

  1. täisarv
    ( int, long )
    
  2. murdarv
    ( float, double)
    
  3. tähemärk
    ( char )
    
  4. tähemärkmassiiv
    ( char[masiivi_suurus] )
    

Oma soovil saab deklareerida oma andmetüübid ja andmekogumid ehk struktuure, näiteks:

struct minustruktuur{
    int t2isarv_liige;
    double murdarv_liige;
    char s6ne_liige[25];
} deklareeritud_muutuja_nimi;

Väärtus[muuda]

Väärtuse alusel jaotuvad muutujad:

  1. konstantideks - programmi kestel muutumatu väärtust andmed (võtmesõna "const" on deklareerimisel muutuja tüübi ees). Konstandi deklareerimisel tuleb ta väärtustada. Konstandid on koodi kirjutatud arvud, tekst(kiri mis asetseb jutumärkide vahel), tähemärk(märk mis paikneb apostroofide vahel).
    const double pii=3.14;
    
    Lisaks:
    • Konstandid on ka erimärgid (nagu: \t - tabulatsion; \n - reavahetus).
    • Kõik muutujad mida saab konstantidena märkida, tuleks seda teha
  2. Muutujateks - programmi kestel oma väärtusi hoidev mälu. Muutujatele on iseloomulike programmi kestel om väärtust muuta, kui nad seda ei tee, tuleks nad deklareerida kui konstatnidena. Nenede algväärtustamine on võimalik, kuid see pole kohustuslik.
    double ostud_summa_kokku=0.0;
    

Paindlikus[muuda]

Paindlikuse alusel jagunevad andmed staatilisteks ja dünaamilisteks andmeteks:

  1. Staatilised on kõik andmed, millele on kompileerimise hetkeks teada andmete skoop ja mälu eraldatakse. Staatilise mälu vabastamise peale skoobi lõppu ehk prügikoristuse eest hoolitseb programm ise.
  2. Dünaamilised on andmed, millele pole kompileerimise hetkeks teada andmete skoop ja muutujatele eraldatakse mälu programmi käigus. Dünaamiliste andmete puhul tuleb organiseerida ise mälu prügikoristus. Dünaamiliseks nimetatakse ka enesepoole pöörduvaid ehk rekrusiivseid funktsioone.