Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Save to My Library
Look up keyword
Like this
179Activity
0 of .
Results for:
No results containing your search query
P. 1
C++ Uvod u Programiranje

C++ Uvod u Programiranje

Ratings:

4.1

(10)
|Views: 18,683 |Likes:
Published by Miroslav Novta
Knjiga namenjena pocetnicima u C++ programiranju. Obradjeno u Dev-C++ okruzenju i na Windows OS platformi.
Knjiga namenjena pocetnicima u C++ programiranju. Obradjeno u Dev-C++ okruzenju i na Windows OS platformi.

More info:

Published by: Miroslav Novta on Jan 31, 2009
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF or read online from Scribd
See more
See less

03/29/2014

pdf

 
II Programiranje pomo
u programskog jezika C++
Da bismo napisali program, neophodna su nam dva specijalizovana programa: jedan koji koristimoda napišemo izvornu datoteku, i drugi (kompajler) sa kojim dobijamo izvršnu datoteku. Danas seova dva prgrama naj
e kombinuju u jedinstven paket – razvojno okruženje. Najpoznatije C++okruženje predstavlja Microsoftov proizvod Visual C++.NET. Me
utim, ve
ina ovakvih programa je komercijalna i nije dostupna svim korisnicima. Ipak, mogu
e je na
i veliki broj besplatnih C++okruženja. Jedno od takvih okruženja je i Dev-C++. Najnoviju verziju pomenutog programamogu
e je na
i na web stranici firme BloodshedSoftware (http://bloodshed.net/download.htmltj.http://bloodshed.net/dev/devcpp.html).
1 Programski paket Dev-C++ 
1.1 Instalacija
Instalacija Dev-C++ programa ni u
emu se ne razlikuje od ve
ine instalacionih datoteka uWindows okruženjima. Dovoljno je dvostrukim klikom pokrenuti instalacionu datoteku (npr.devcpp-4.9.9.2_setup.exe) i pratiti poruke na ekranu. Nakon instalacije preporu
ljivo je podesiti neke opcije, mada to nije od velike važnosti za programekoji
e se koristiti na ovom kursu. Ipak, u meniju
Tools
, i podmeniju
Compiler options
, prvo trebaizabrati opciju
Code Generation
. U prozoru koji se dobije opciju
 Enable Exception Handling 
trebaaktivirati (staviti na
 yes
). Zatim treba izabrati opciju
 Linker 
i aktivirati
Generate Debugging  Information
. Na ovaj na
in instalacija je završena.
1.2 Kreiranje prvog programa
1.2.1 Upisivanje koda
 Nakon pokretanja programa Dev-C++, prvi korak u kreiranju koda je otvaranje novog zadatka.Dev-C++ pruža više opcija, ali
e se u ovom kursu uglavnom raditi na jednostavnim datotekama saizvršnim kodom (opcija
 File/New/Source File
). Nakon odabira ove opcije, otvara se prozor u kojitreba upisati kod, na primjer  Nakon upisa kod sa
uvamo na nekom mjestu na hard disku, npr. pod imenom hello.cpp
 
#include <iostream>using namespace std;int main(){cout << “Hello, world!” << endl;system("PAUSE");return 0;}
Programski jezici, C++
1
 
1.2.2 Generisanje izvršne datoteke
 Nakon što se sa
uva ovaj kod, treba ga kompajlirati, tj. proizvesti izvršnu mašinsku datoteku. Ovose izvodi korištenjem kombinacije tipki Ctrl+F9 na tastaturi, ili izborom opcije
Compile
u meniju
 Execute
, ili pritiskom na ikonu u nizu alata. Nakon startanja procesa kompajliranja, pojavljuje se prozor sa porukama koje prate proceskompajliranja. Dev-C++ daje poruku u slu
aju da na
e bilo kakvu grešku u programu. U slu
aju danema grešaka, stvara se izvršna datoteka koja se naziva
hello.exe
.
1.3 Pokratanje programa
Pokretanje programa, koji smo prethodno kompajlirali, u Dev-C++ okruženju izvodi se izboromopcije
Run
u meniju
 Execute
, kombinacijom tipki Ctrl+F10 na tastaturi, ili pritiskom na ikonuPrethodna dva procesa (kompajliranje i pokretanje) mogu
e je objediniti pritiskom na tipku F9 natastaturi, izborom opcije
Compile&Run
u meniju
 Execute
, ili izborom ikone .Program je mogu
e pokrenuti i van Dev-C++ okruženja, dvostrukim klikom na izvršnu datoteku
hello.exe
.
2 Osnove programiranja 
2.1 Struktura programa
C++ program se sastoji od jedne ili više cjelina za prevo
enje, pri
emu ove cjeline predstavljajudio programa koji treba kompajlirati odvojeno od drugih cjelina. Ta
nije, cjelina za prevo
enje jerezultat primjene preliminarne faze kompilacije, koja se naziva predprocesiranje, na izvornudatoteku (
 source
).Izvorna datoteka obi
no po
inje sa jednom ili više (predprocesorskih) direktiva
#include
, pri
emusvaka od njih navodi predprocesor da kopira deklaracije entiteta (funkcija, globalnih varijabli,tipova, itd), koji su definisani u ostalim cjelinama za prevo
enje.Posmatrajmo primjer iz prethodnog poglavlja:U liniji 1 pozvana je datoteka
iostream
. Prvi karakter (
#
) predstavlja symbol, koji daje signal predprocesoru. Svaki put kada pokrenemo kompajler, predprocesor je ve
pokrenut. U principu, predprocesor 
ita kroz izvornu datoteku i traži linije koje po
inju sa ovim karakterom, tako da ih predprocesor pro
e prije nego kompajler starta sa radom. Ukratko ova linija zna
i: Ono što slijedi je
1 #include <iostream>2 using namespace std;3 int main()4 {5 cout << “Hello, world!” << endl;6 system("PAUSE");7 return 0;8 }
Programski jezici, C++
2
 
ime datoteke. Na
i tu datoteku i odmah je pro
itaj. Uglaste zagrade (
<>
) daju naredbu predprocesoru da na
e zadatu datoteku koja je dio standardne biblioteke (u datom primjeru to jedatoteka koja sadrži definicije za ispis i upis). U slu
aju kada bismo htjeli uvrstiti neku svojudatoteku, umjesto zagrada bismo koristili znake navoda. Dakle, ova linija kaže predprocesoru dana
e datoteku koja se zove
iostream
i da je odmah pro
ita. Naravno, sadržaj tražene datoteke bismo mogli upisati u izvornu datoteku bez korištenja direktive
#include
.Linija 2 omogu
uje pristup standardnom entitetu (
namespace
) koji se naziva
std
. Bez ove linije,linija 5 bi se morala izvršiti na druga
iji na
in (
std::cout <<
....)Linijom 3 po
inje stvarni program sa funkcijom koja se naziva
main().
Svaki C++ program sadržiovu funkciju. Funkcija predstavlja dio koda koji odra
uje odre
enu radnju. Ina
e, program može daima proizvoljan broj funkcija, pri
emu je funkcija
main()
specijalna. Kada god se program starta,ona se automatski poziva. Sve funkcije po
inju zagradom
{
i završavaju zagradom
}
, a sve izme
uovih zagrada predstavlja dio funkcije.Glavni dio programa je linija 5, koja predstavlja neku naredbu, tj. ra
unarski korak koji daje nekuvrijednost. Kraj naredbe uvijek zavr 
ava ta
ka-zarezom. Naredba u datom primjeru šalje string
"Hello world \n"
na tok 
cout
(
output stream
). String je svaki niz karaktera koji se nalazi izme
uznaka navoda. Posljednji karakter u datom stringu (
\n
) je karakter koji ozna
ava novi red (vidi poglavlje II.2.10).
Stream
je objekat koji izvršava ulazne i izlazne naredbe.
cout
je standardniizlazni
stream
u C++ (standardni izlazni
stream
je obi
no ekran). Simbol
<<
je izlazni operator (usmjeriva
toka) kojem je lijevi operand izlazni
stream
, a desni izraz, i koji uzrokuje da se ovaj posljednji posalje na prvopomenuti. Dakle, u ovom slu
aju string
"Hello world \n"
se šalje na
cout
, tj. uzrokuje njegov ispis na ekranu.Linija 6 zaustavlja izvršenje programa, kako bismo bili u mogu
nosti vidjeti rezultat njegovog rada.Bez ove linije program bi se nakon pokretanja izvršio, a konzola bi se zatvorila tako brzo da bismoimali osje
aj da program nije ništa ni uradio.
2.2 Proces kompajliranja 
Kompajliranje C++ programa obuhvata nekoliko koraka, koji su ve
inom nevidljivi za korisnika:
 prvo, C++ predprocecsor ide kroz program i izvodi instrukcije koje su specificirane predprocesorskim direktivama (npr.
#include
). Rezultat ovoga je modificirani tekst programa koji više ne sadrži nikakve direktive.
zatim, C++ kompajler prevodi programski kod. Kompajler može biti pravi C++ kompajer koji pravi osnovni (asemblerski ili mašinski) kod, ili samo prevodilac, koji kod prevodi u C jezik. U drugom slu
aju, rezultuju
i C kod je zatim proveden kroz C kompajler kako bi senapravio osnovni kod. U oba slu
aja, rezultat može biti nepotpun zbog toga što program poziva podprogramske biblioteke koje nisu definisane u samom programu.
 Na kraju, linker završava objektni kod njegovim povezivanjem sa objektnim kodom bilokojeg modula biblioteka koji program može pozvati. Kona
an rezultat je izvršna datoteka.Slika II.2.1 ilustruje prethodno navedene korake i za C++ prevodilac i za C++ prirodni kompajler.U praksi su sve ove komande obi
no izvršene jednom komandom (npr. CC), a korisnik ni ne vididatoteke koje su se napravile u me
ufazama.
Programski jezici, C++
3

Activity (179)

You've already reviewed this. Edit your review.
rose256 liked this
1 thousand reads
1 hundred reads
Anita Minić liked this
zoranteic liked this
Bojan Ristic liked this
Maja Balat liked this
Filip Pernar liked this

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->