Uvod u C   Autor: Milan Miščević
 
Jezik
Istorijat
C++
Kompajler
Razvojni ciklus
Hello.c
Greške
Komentari
Varijable
Printf i scanf
Include i main
Zbir.c
Konstante
Naredbe i izrazi
Operatori I
Zadaci I nivo
Operatori II
If/else
Zadaci II nivo
For
Zadaci III nivo
While
Zadaci IV nivo
Funkcije
Zadaci V nivo
Nizovi
Zadaci VI nivo
Zadaci
Rječnik
Literatura

abc C
  Varijable (eng. Variable) su su memorijske lokacije koje sadrže podatke. Sa varijablama ste se sreli još u prvom razredu osnovne škole. Samo, tada ste ih zvali nepoznate. Npr. Koliko je x, ako je x = 2 + 3? Isto važi i za varijable u C-u, uz neke male modifikacije, jer je ovo ipak programiranje, a ne matematika.

Imena varijabli

Svaka varijabla ima svoje ime. Nisu sva imena dozvoljena i moguća. Za to postoje pravila:
  • Ime varijable mora biti sastavljeno od slova, cifri i donjih crta (_) (eng. Underscore).
  • Prvi znak mora biti slovo. Dozvoljeno je i da donja crta bude prva, ali se ne preporucuje.
  • Rezervisane riječi C sintakse takođe ne mogu biti varijable.
  • Dozvoljena je upotreba i kombinovanje velikih i malih slova.
  • Dužina imena neka ima do 31 znak. Ne podržava svaki kompajler duža imena.
Sledeća tabela pokazuje primjere ispravnih i neispravnih imena varijabli.

Ime varijable Ispravnost
Procenat Ispravna
procenat Ispravna
pROCenat Ispravna
Ukupna_vrijednost Ispravna
MarkovNovac Ispravna
a_b_c_d_e__f___g Ispravna
_cijena_ Ispravna, ali se ne preporučuje
ukupan_broj_predjenih_kilometara Ispravna, ali se ne preporučuje
M4rk0 Ispravna
root#komanda Neispravna, jer sadrži znak #
Sličica Neispravna, jer sadrži znak sa kvačicom
5ak Neispravna, jer počinje sa brojem
int Neispravna, jer je to rezervisana riječ sintakse
char Neispravna, jer je to rezervisana riječ sintakse

Varijable "Procenat" i "procenat" nisu iste varijable. C je jezik koji je osjetljiv na velika i mala slova (eng. Case-Sensitive).

Preporučuje se upotreba opisnih varijabli, kao što su "MarkovNovac" i "Ukupna_vrijednost", jer čine kod razumljivijim nego da se koriste "a", "b", "c", "d"...

Tipovi varijabli

U ovom radu pažnja kod varijabli biće usmjerena samo na numeričke varijable.
U C-u postoji nekoliko vrsta numeričkih varijabli. Razlikuju se u količini memorije potrebnoj za snimiještanje podataka i opsegu vrijednosti. Tabela:

Tip varijable Rezervisana riječ Potrebno bajtova Opseg vrijednosti
Karakteri (eng. Character) char 1 od -128 do 127
Cijelobrojni (eng. Integer) int 2 od -32.768 do 32.767
Kratki cijelobrojni (eng. Short Integer) short 2 od -32.768 do 32.767
Dugi cijelobrojni (eng. Long Integer) long 4 od -2.147.483.648 do 2.147.438.647
Neoznačeni cijelobrojni (eng. Unsigned Character) unsigned char 1 od 0 do 255
Neoznačeni cijelobrojni (eng. Unsigned Integer) unsigned int 2 od 0 do 65.535
Neoznačeni kratki cijelobrojni (eng. Unsigned Short Integer) unsigned short 2 od 0 do 65.535
Neoznačeni dugi cijelobrojni (eng. Unsigned Long Integer) unsigned long 4 od 0 do 4.294.967.295
Decimalni sa jednostrukom tačnošću (eng. Single-precision floating-point) float 4 od 1,2*10-38 do 3,4*1038
Decimalni sa dvostrukom tačnošću (eng. Double-precision floating-point) double 8 2,2*10-308 to 1,8*10308

Uz int, short i long može da stoji signed, ali ne mora.

Deklarisanje varijabli

U C-u, varijable moraju se deklarisati (definisati) prije nego što budu upotrebljene. Deklaracija varijable informiše kompajler o imenu varijable i tipu podatka koje ona sadrži i ima sledeći oblik:
      ime_tipa ime_varijable;
Primjeri:
      int Procenat; /* Procenat je cijelobrojan broj. */

      long Ukupna_vrijednost; /* Ukupna_vrijednost
      postaje dugi cijelobrojni broj. */

      float MarkovNovac; /* Marko moze imati i nesto sitnisa,
      pa je zato decimalni. */
A može se više varijabli deklarisati u istom redu, ali su imena odvojena zarezima:
      int suma, zbir, razlika, kolicina, broj_clanova;
Pa su sada sve varijable cijelobrojni brojevi.

Na ovom nivou znanja, najbolje je da sve deklaracije varijabli zajedno stavite neposredno prije početka main funkcije.

Početne vrijednosti varijabli

U toku izvršavanja aplikacije, varijabli se obično dodjeljuje određena vrijednost. To se čini sa znakom pridruživanja (=).
      /* Neki kod. */

      int kolicina;

      /* Neki kod, a moze da ga i ne bude. */

      kolicina = 54;

      /* Neki kod. */
Varijabli se može dodjeliti vrijednost pri deklaraciji.
      int kolicina = 54;
Ime varijable je zamjena za vrijednost koja joj je pridružena. Ukoliko se desi da se upotrijebi varijabla, kojoj nije pridružena neka vrijednost ili se pridruži vrijednost koja je van opsega tog tipa podatka, izlaz aplikacije se ne može predvidjeti.

Komentari - Printf i scanf