[Powered by Google Translate] НАТЕ Хардисон: У програмирању, библиотека је збирка вези претходно написану код. Библиотеке су како ми, као програмери, деле заједничке и помоћи код једни са другима, са различитим програмима које пишем, па чак и са различитим процесима руннинг ат У исто време на нашим рачунарима. Хајде да погледамо мало. Једна од најчешћих функција које вероватно сте Користим је принтф функција. Сада, иф није нека магија функција која је била тешко кодирана у рачунар - уместо тога, она је део Ц Стандард библиотека, који су колекција функција које долази са Ц програмски језик. Пошто принтф није уграђена у рачунар, то значи да било је неких програмер који је заправо отишао и написао принтф функција и испоручује га са остатком стандардни библиотеке, тако да будући програмери неће морати да дупликат напор. И ми смо сигурни захвални да је то случај, јер проверите колико код је то заправо потребно да принтф спроведе. Тхе Ц Стандардни Библиотеке, од којих је иф дио, су један од најважнијих алата можете имају у решавању ЦС50. Поред улазно-излазне библиотеке, где принтф животи, постоји гомила других библиотека које вероватно ћете користити током ЦС50. На пример, ниска библиотека има функције упореди Ц конце, добити њихову дужину и повезати у облику ланца их. А математика библиотека даје вам помоћи константе, као пи е. Сада, у поређењу са стандардним библиотекама других програма језици, Ц Стандардне библиотеке су заиста мали, али они још увек имају значајну количину ствари. И то не значи да је стандард Библиотеке су само Ц библиотеке; постоје много више тамо у свет за вас да користите, укључујући ЦС50 библиотеци цартограпхи библиотеке са шифровање и дешифровање функције, библиотека са функцијама за кодирање и репродукује видео, и тако даље. Ово нас доводи до важне страну. Један од основних вештина инжењеринга знања алати доступни у вашој алатки, тако да можете да користите их и избегавајте прекрајањем точак уколико морате да то урадите. Као програмерима, библиотеке су један од најважнијих алати имамо. Када се нађете пред задатак који изгледа досадан или уобичајена, као и проналажење дужину стринга Ц, морате треба питати се да ли је то можда случај да неко је већ урадио исту ствар пре. Шансе су да би вам неко помогну у библиотеци. Дакле, у техничком смислу, библиотека је бинарна датотека која је продуцирао заједно повезивање колекцију објецт фајлова користећи алатку, можете претпоставио је, повезивач. Објецт фајлови су они о датотеке које добијате када. састави Ц изворног кода. Када програмери пишу библиотеке, они обично раздвоје Ц кода у две врсте датотека: заглавља и спровођење датотеке. Хеадер фајл конвенцијом је дата х екстензију., и садржи шифру која проглашава библиотека је ресурсе који су доступни за коришћење. Ови ресурси укључују функције, променљиве, Структуре, тип дефиниције, и тако даље, и заједно, они су познатији као интерфејс. У ствари, ако сте се икада питате шта је у библиотеци, х заглавља су место да погледам. На пример, можете повући до уср / инцлуде / стдио.х и проверите од свега што је икада желели да знате о стандардна ИО библиотека. Има много ствари у овде, и то може да потраје мало Време је да прегазити преко. Међутим, заједно са Гоогле и манпагес, ово је место да иду ако се питате како је стандардни И / О библиотечке функције раде. Дакле, један од кључних ствари да овде напоменути, међутим, да заглавља обично не укључују дефиниција функција - то јест, актуелни функција имплементације. То је илустрација једног важног рачунарске науке Принцип се зове информација крије, такође се помињу у пута енкапсулација. Као корисник или клијента у библиотеци, не морате да Знам о унутрашњим библиотеке у нареди да га користите. Сећам принтф пре само мало? Да ли сте икада видели стварни код раније? Па, претпостављам да нисте, иако сте можда Користио принтф тона времена. Све што је морао да зна је функција декларација садашњости У стдио.х заглавља датотеке. У сваком случају, корист од доброг информационог скривања је да и програми које уписујете су изоловани од било каквих промена у код спровођења библиотечких функција. Ако имплементација принтф промена, не морате да иде и променити све програме који користе принтф. Дакле, где се имплементација иде? Па, опет, по обичају, имплементација иде у фајл са ц екстензију.. Обично, заглавље датотеке и имплементација фајлова иду руку у руци, тако да ако сте прогласила гомилу нових ниске функције у мистринг.х, онда ћете дефинисати све те функције у МиСтринг ц.. Дакле заглавља и имплементација фајлови су тада саставио, стварајући објекат датотеке које су затим повезане заједно да произведе датотеку бинарну библиотеку. Библиотека писац ће послати бинарни фајл дуж са заглавља фајлова на програмерима који желе да користе библиотека. У овом тренутку, ц спровођење фајлови нису. потребно, осим да компајлирате библиотеку од нуле, тако да Често су изостављени. Да бисте користили Ц библиотеку, морате да урадите две ствари. Прво, мора да обухвати # датотеке библиотеке заглавља и изворни код датотеке где желите да користите библиотеке кода. Ово обавештава компајлер свих декларација функције, променљиве, Структуре, и тако даље, присутни у хеадер датотеке, тако да преводилац може, да обезбеди да ви користите ресурсе библиотеке на прави начин, и два, генерише одговарајући код монтаже. У зависности од тога где је библиотека је заглавље датотеке налази, # инцлуде синтакса варира. Ако хеадер фајлови се налазе у систему је стандардна укључују директоријум - типично, уср/инцлуде-- онда је угао заграде синтакса се користи, као у # инцлуде . Међутим, ако су заглавља датотеке се налазе у истом директоријум као свог кода, двоструки цитат синтакса је користи, као иу # инцлуде "милиб.х". Друга ствар коју треба да урадите је да се повежу у бинарном Библиотека датотека када компајлирате свој код. Ово је супер важан корак. Запамтите нашу ранију дискусију о томе како заглавље фајлови не садрже код за имплементацију? Ако заборавите овај корак, добићете грешке о недефинисани симболи наведени у вашем коду. Да бисте решили ово, користите-л застава следи одмах без простора од имена библиотеке. На многим системима, укључујући апарата, је Ц Стандард Библиотеке су аутоматски повезани за вас. Међутим, математика библиотека понекад пакету одвојено и можда треба да буду повезани са-ЛМ. На апарату, бринемо о томе за вас, а такође смо повезати ЦС50 библиотеку са-лцс50. Можете видети све ово на апарату када покренете направити. Сада би требало да имате знање потребно да користите Библиотеке у Ц. Да истражује забаву. Моје име је Нејт Хардисон, а ово је ЦС50.