[Powered by Google Translate] Nate HARDISON: Në programimit, një bibliotekë është një koleksion i
Kodi lidhura prewritten.
Bibliotekat janë si ne, si programuesit, pjesa e përbashkët dhe
Kodi dobishme me njëri-tjetrin, me programet e ndryshme ne
shkruaj, dhe madje edhe me proceset e ndryshme në drejtimin e
Në të njëjtën kohë në kompjuter tonë.
>> Le të shqyrtuar një grimë.
Një nga funksionet më të zakonshme që ju ndoshta keni
përdorur është funksioni printf.
Tani, printf nuk është një funksion magjik që ka qenë
vështirë-koduar në kompjuter -
më tepër, kjo është pjesë e Bibliotekave Standardit C, të cilat janë
një koleksion të funksioneve që vjen me
Gjuha C programimit.
Që printf nuk është ndërtuar në kompjuter, që do të thotë se
ka pasur disa programues i cili në fakt shkoi në dhe shkruante
funksioni printf dhe bundled me pjesën tjetër të standard
bibliotekat në mënyrë që programuesit e ardhshme nuk do të duhet të
kopjuar përpjekje.
Dhe ne jemi të sigurt se kjo është mirënjohës rasti, sepse kontrolloni
se sa ai në fakt merr Kodi për zbatimin printf.
>> Bibliotekat Standard C, e cila është një pjesë e printf, janë
një nga mjetet më të rëndësishme që
kanë në trajtimin CS50.
Përveç bibliotekës input-output ku
printf jeton, ka një bandë e bibliotekave të tjera që
ju ndoshta do të përdorë gjatë rrjedhës së CS50.
Për shembull, biblioteka string ka funksione të
krahasoni strings C, të merrni gjatësinë e tyre, dhe lidh ato.
Dhe biblioteka matematikë ju jep të dobishme
konstanta, si dhe e pi.
Tani, në krahasim me bibliotekat standarde të programimit tjetër
gjuhëve, Bibliotekat Standard C janë me të vërtetë të vogël,
por ata ende kanë një sasi të konsiderueshme të stuff.
Dhe kjo nuk do të thotë se janë Bibliotekat Standard
vetëm C bibliotekat, nuk janë më shumë atje në
Bota për ju për të përdorur, duke përfshirë edhe bibliotekën CS50,
Bibliotekat kartografi me encryption dhe decryption
funksionet, bibliotekat me funksione për të kodifikuar dhe
luajë përsëri video, dhe kështu me radhë.
>> Kjo na sjell në një mënjanë rëndësishme.
Një nga aftësitë esenciale të inxhinierisë është ditur
mjetet në dispozicion në Toolbox tuaj në mënyrë që ju mund të përdorni
ata dhe për të shmangur Reinventing timon përveç
ju duhet të bëni kështu.
Si programuesit, bibliotekat janë një nga më të rëndësishme
mjete ne kemi.
Kur ju të gjeni veten përballet me një detyrë që duket i lodhshëm apo
zakonshme, si gjetja gjatësinë e një varg C, ju
duhet të pyesni veten nëse ajo mund të jetë rasti që
dikush është bërë tashmë të njëjtën gjë më parë.
Shanset janë që ju mund të gjeni disa
ndihmojë brenda një bibliotekë.
>> Pra, në aspektin teknik, një bibliotekë është një file binar që
ka qenë prodhuar duke lidhur së bashku një koleksion të
Fotografi objekt duke përdorur një mjet të quajtur, ju
mendoi ai, i Linker.
Fotografi objekt janë ata. Fotografi o që ju të merrni kur ju
përpilojnë kodin C burim.
Kur programuesit shkruani biblioteka, ata zakonisht
C ndajë kodin e tyre në dy lloje të dosjeve:
fotografi header dhe fotografi zbatimit.
Një skedë header nga Konventa është dhënë extension. H file,
dhe ajo përmban kodin që deklaron Biblioteka e
burimet që janë në dispozicion për ju për të përdorur.
Këto burime përfshijnë funksionet, variablat, structs,
përkufizimet lloji, dhe kështu me radhë, dhe së bashku, ata janë
zakonisht të referuara si interface.
Në fakt, në qoftë se ju jeni të pyesin se çfarë ndonjëherë është në një bibliotekë,
fotografi header janë vendi për të parë.
>> Për shembull, ju mund të tërheqë deri usr / include / stdio.h dhe shikoni
nga çdo gjë keni kërkuar ndonjëherë të dini rreth
standardi biblioteka io.
Ka shumë gjëra në këtu, dhe ajo mund të marrë një grimë e
koha për të hidhem me.
Megjithatë, së bashku me Google dhe manpages, kjo është
vend për të shkuar në qoftë se ju jeni të pyesin se si standarde I / O
funksionet e bibliotekës punojnë.
Pra, një gjë e rëndësishme të theksohet këtu, megjithatë, është se dosjet Header
zakonisht nuk përfshijnë përkufizimet funksion -
që është, Implementimi aktuale funksion.
Ky është një ilustrim i një shkencë kompjuterike rëndësishëm
Parimi i quajtur fshehur informacionet, referuar edhe në
herë si encapsulation.
>> Si përdorues ose klient i një biblioteke, ju nuk keni nevojë për të
dini rreth internals e bibliotekës në
në mënyrë që të përdorin atë.
Të ruaj të shohim printf vetëm pak më parë?
Sikur keni parë ndonjëherë kodin aktual para?
E pra, unë të supozojmë se ju nuk e keni, edhe pse ju mund të
kanë përdorur printf ton të kohës.
Të gjithë ju duhet të dini se ka qenë deklarata funksion të pranishëm
në dosjen stdio.h header.
Gjithsesi, përfitimi i fshehur informacionit mirë është se ju
dhe programet që ju shkruani janë të izoluar nga çdo ndryshim në
Kodi i zbatimit të funksioneve të bibliotekës.
Nëse zbatimi i ndryshimeve printf, ju nuk keni
për të shkuar dhe për të ndryshuar të gjitha programet tuaja që përdorin printf.
>> Pra, ku nuk zbatimi shkoni?
E pra, përsëri, nga Konventa, zbatimi shkon në një
fotografi me extension. C file.
Zakonisht, fotografi dhe fotografi header zbatimit të shkojnë dorë
në dorë, kështu që nëse ju keni deklaruar një bandë e vargut të ri
Funksionet në mystring.h, atëherë ju do të përcaktojë të gjitha
ato funksione në mystring. c.
Pra, atëherë fotografi header dhe zbatimi pastaj janë
përpiluar, duke krijuar fotografi objekt që janë të lidhura më pas
së bashku për të prodhuar file binar bibliotekës.
Shkrimtari Biblioteka pastaj do të anijes file binar bashku
me fotografi header për programuesit të cilët dëshirojnë të përdorin
biblioteka.
Në këtë pikë, të zbatimit. Fotografi c nuk janë
nevojshme, me përjashtim të recompile bibliotekën nga e para, kështu që
ata janë lënë shpesh jashtë.
>> Për të përdorur bibliotekën C, ju duhet të bëni dy gjëra.
Së pari, ju duhet të përfshijë # dosjet e Bibliotekës së header dhe
Kodi source file ku ju dëshironi të përdorni
Kodi i bibliotekës.
Kjo informon përpiluesit e të gjitha deklaratave të
funksionet, variablat, structs, e të tjera, të pranishëm në
fotografi header në mënyrë që përpiluesit mund një, të siguroj që
ju jeni duke përdorur burimet e bibliotekës në mënyrë të duhur,
dhe dy, të gjenerojë kodin e duhur kuvendit.
Varësisht nga ku dosjet e bibliotekës së header janë
vendosur, sintaksa # include ndryshon.
Nëse fotografi header janë të vendosura në sistemin e
parazgjedhje përfshijnë Directory -
zakonisht, usr/include--
atëherë kënd kllapa Sintaksa është përdorur, si në # përfshijnë
.
Megjithatë, nëse fotografi header janë të vendosura në të njëjtën
Direktoria si kodin tuaj, sintaksa dyfishtë japin kuotën është
përdorura, si në # include "mylib.h".
>> Gjëja e dytë që ju duhet të bëni është që të lidhë në binar
Biblioteka fotografi kur ju përpilojnë kodin tuaj.
Ky është një hap i rëndësishëm super.
Mbani mend diskutimin tonë të mëparshme në lidhje me mënyrën se si header
Fotografi të mos përmbajnë kodin e zbatimit?
Nëse ju harroni këtë hap, ju do të merrni gabime në lidhje me
Simbolet e padefinuara të cekura në kodin tuaj.
Për të zgjidhur këtë, përdorni-l flamurin e ndjekur menjëherë
pa një hapësirë ​​me emrin e bibliotekës.
Më shumë sisteme, duke përfshirë pajisje, Standardi C
Bibliotekat janë të lidhura automatikisht për ju.
Megjithatë, biblioteka matematikë është bundled ndonjëherë më vete
dhe mund të duhet të jetë i lidhur me-LM.
Në aplikim, ne të kujdeset për këtë për ju, dhe ne gjithashtu
lidhë bibliotekën CS50 me-lcs50.
Ju mund të shihni të gjithë këtë në aplikim kur ju drejtuar të bëni.
>> Tani ju duhet të keni njohuri ju duhet të përdorni
bibliotekat në C. Have fun eksploruar.
Emri im është Nate Hardison, dhe kjo është CS50.