HULK Forum Index Programiranje main() |
Pregledavanje ovog Threada:
1 Anonimnih Korisnika
Dno Prethodna tema Sljedeca tema |
|
|
|
---|
Pošiljatelj | Thread |
---|
|
Re: main() | #2 |
|||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Linux Master
Pridružen: 02.01.2005
Od Zagreb/Korčula
Poruke: 223
Level : 13 HP : 0 / 323 Grupa:
Registered Users UrednikNovosti |
int main() ide kada zelis da ti program vraca cijeli broj
ugl.. to ti je ako se program pravilno izvrsi do kraja u pravilu mora vratiti 0, a ako dodje do neke pogreske mora vratiti 1... void main() stavljas kad ne zelis da ti glavni program ne vraca nista... to ugl, ako ne pises neki veliki program u kojem bi mozebit trebale biti greske.. |
||||||||||
Postano : 04.08.2008 16:28:31
|
|
Re: main() | #3 |
|||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Linux Master
Pridružen: 04.01.2005
Od 33 stupnja i 4 minute sjeverno, i zatim 5 koraka na zapad
Poruke: 2391
Level : 39 HP : 0 / 964 Grupa:
Webmasters Registered Users HULK UrednikNovosti UrednikRecenzija UrednikLinkova ModeratoriForuma UrednikSekcija UrednikBlogova UrednikDogadjanja UrednikDokumenata UrednikKomentara |
Ovo nema veze s tim da li je program pisan u C-u ili C++-u ili nekom trećem jeziku, jer je ista stvar neovisno o jeziku.
Svaki pravilan unix program pri završetku rada treba vratiti neku vrijednost okolini koja ga je pokrenula. Stoga, unix programe pišemo sa "int main()". Po dogovorenom standardu, prijašnji unix programi vraćali su 0 ako je sve ok, a od 1 do 127 ako je neka greška (vraćena greška ukazivala je koji je problem, s tim da su neke greške standardizirane), a današnji vraćaju 0 ako je sve ok, a od 1 do 255 ako je neka greška. S tim da kao i u starijoj varijanti, kod greške nešto znači, ako nikome drugome, onda autoru programa. "void main()" ako se baš radi o nekom jednostavnom programu oko kojega se ne želiš previše zamarati. Samo pazi da te to ne zavara, jer u nekim unix okolinama očekuje se vraćen nekakav rezultat, pa sustav može odjednom izgenerirati nešto svoje. Sa raznoraznim nedefiniranim posljedicama. AFAIK i drugi non-unix OS-ovi (npr windows) očekuju "int main()" a ne "void main()". Stoga, "int main()", a tekstove gdje ti preporučaju "void main()" čitaj s dozom opreza i skepticizma, jer je tu nešto možda malo trulo... |
||||||||||
Postano : 04.08.2008 17:31:26
|
|
Re: main() | #4 |
|||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Linux Master
Pridružen: 22.02.2008
Od ma eto odma iza ćoška :)
Poruke: 161
Level : 11 HP : 0 / 268 Grupa:
Registered Users |
slobodan ti je dao izuzetno precizno i dobro objasnjenje, ali kao pocetnik ca c/c++ to ti nece nista pretjerano znaciti u zivotu ako napises
void main(){} ili int main{... return 0;} (premda je main po defaultu tipa integer). Postoji bitna razlika izmedju programiranja pod win i linuxom, tako da moras rascistiti gdje radis. Premda, opet naglasavam, ako ces se baviti osnovama programiranja, onda ti to nece biti bitno! |
||||||||||
_________________
Who the fuck is General Failure? And why is he reading my harddisk? |
|||||||||||
Postano : 06.08.2008 18:07:08
|
|
Re: main() | #5 |
|||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Linux Master
Pridružen: 04.01.2005
Od 33 stupnja i 4 minute sjeverno, i zatim 5 koraka na zapad
Poruke: 2391
Level : 39 HP : 0 / 964 Grupa:
Webmasters Registered Users HULK UrednikNovosti UrednikRecenzija UrednikLinkova ModeratoriForuma UrednikSekcija UrednikBlogova UrednikDogadjanja UrednikDokumenata UrednikKomentara |
Inače, ja sam pomenuo win i linux u usporedbi a ne HCmanijak, ali kad smo se već malo više dotakli te teme, da, dosta stvari je različito, ali što se konkretno "main()" tiče o čemu trenutno i pričamo, i pod win je poželjno da je to "int main()" i da po završetku vraća nešto sustavu, tako da u tom aspektu nema razlike.
|
||||||||||
Postano : 07.08.2008 8:07:49
|
|
Re: main() | #6 |
|||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Upravo došao
Pridružen: 06.05.2008
Od
Poruke: 9
Level : 1 HP : 0 / 21 Grupa:
Registered Users |
Puno hvala
|
||||||||||
_________________
If I am guilty I will pay |
|||||||||||
Postano : 08.08.2008 6:55:18
|
|
Re: main() | #7 |
|||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Upravo došao
Pridružen: 06.01.2009
Od
Poruke: 11
Level : 2 HP : 0 / 28 Grupa:
Registered Users |
inace, potpuno pravilno bi bilo:
int je obavezan jer vracas kod greske (0 = nema je) a ovaj void unutar zagrada je potreban zato jer kada se poziva program, argumenti se prosljedjuju preko parametra main funkcije.... to izgleda ovako:
I, sada kada bi pokrenuli program ovako:
dobili bi ispis:
|
||||||||||
Postano : 08.01.2009 19:36:28
|
Vrh Prethodna tema Sljedeca tema |
|