[linux] mierne OT : GCC

Matus "fantomas" Uhlar uhlar na fantomas.sk
Čtvrtek Říjen 5 09:55:36 CEST 2000


-> Mam takyto problem. Mam zdrojaky jednotlivych casti programu v C. Je to
-> viacej suborov.

-> V zakladnom, kde je volana funkcia main(), su definovane externe pemenne.

Ujasnime si co znamena definovat (premennu vytvoris) a deklarovat (povies
prekladacu ze taka premnenna nieke existuje. Ak su externe, nemozu byt
definovane. ale niekde inde by mali byt definovane (bez extern) a malo by to
byt len v jednom subore...

-> Pri kompilacii cez makefiles, skompiluje zdroje po jednom, ale samozrejme
-> pri zakladnom vyhlasuje, ze niektore z premennych nie su inicizlizovane.

ak uviedol si ich ako extern vsetky? hmmm... na to by som sa kukol...

-> Jasne, inicializovane su v ostatnych suboroch, pri funkciach v ktorych su
-> prvy raz pouzite. Ale po zlinkovani ako zistim, ze skutocne neostala
-> nijaka premenna nezinicializovana ?

tak ze v main() vypises ich hodnoty. ked bezi main, inicializacia vsetkych
premenych uz musela dobehnut (ak sa nehras so zdielanymi kniznicami)

-> Samozrejme, ze tie, ktore su pouzite by chybali, ale co ak som zaviedol
-> premennu, ktoru som nikde nepouzil ? A zbytocne mi bude v zdojoch
-> zavadzat ? Je na to nejaky program, alebo je to standardne zabudovane v
-> kompilatore, prip. linkery ?

Linker by mal vyhodit vsetky nepouzite symboly.
A pri kompilacii vacsinou nepouzite a definovane symboly zahlasi.

-> Apropos: existuje niekde prelozeny popis programovania, lepsie povedane
-> pouzivania gcc? Obraciam sa na Vas ako na asi najzbehlejsich v pouzivani
-> gcc, tak ma nekamenujte. Gcc konferu som v domenach .sk a .cz nenasiel.
-> Odpovede prosim privatne, vzhladom na OT.

precitaj si definicie ANSI C; pripadne si nainstaluj balik gcc-docs. Inac,
gcc neobsahuje ziadne nestandardne konstrukcie, jedine ak definuje rozne
makra (typu #ifdef __GCC__) atd.

-- 
 Matus "fantomas" Uhlar, sysadmin at NEXTRA, Slovakia; IRCNET admin of *.sk
 uhlar na fantomas.sk ; http://www.fantomas.sk/ ; http://www.nextra.sk/
 Save the whales. Collect the whole set.



Další informace o konferenci linux