[Powered by Google Translate] Nate HARDISON: programmeerimine, raamatukogu on kogumik
seotud prewritten kood.
Raamatukogud on, kuidas me, nagu programmeerijad, jagavad ühiseid ja
kasulik kood üksteisega koos erinevate programmide me
kirjutada, ja isegi erinevate protsesside töötab
Samal ajal meie arvutid.
>> Uurime natuke.
Üks sagedamini funktsioone, olete ilmselt
kasutanud on printf funktsiooni.
Nüüd printf ei ole mingi maagiline funktsioon, mis on olnud
püsiprogrammeeritud arvuti -
pigem on see osa C Standard raamatukogud, mis on
kogumik ülesandeid, mis on varustatud
C programmeerimiskeelt.
Kuna printf ei ole sisse ehitatud arvuti, mis tähendab, et
seal oli programmeerija, kes tegelikult läks ja kirjutas
printf funktsiooni ja komplekteeritud see ülejäänud standard
raamatukogudes, nii et tulevikus programmeerijad ei pea
eksemplaris pingutust.
Ja me oleme kindlad tänulikud, et see on nii, sest vaadata
kui palju koodi tegelikult kulub rakendada printf.
>> C Standard Raamatukogud, millest printf on osa, on
üks tähtsamaid vahendeid te
on võitluses CS50.
Lisaks sisend-väljund raamatukogu, kus
printf elu on hunnik muid raamatuid, mida
sa ilmselt kasutada jooksul CS50.
Näiteks string raamatukogu on funktsioonid
võrrelda C stringid, saada oma pikad ja concatenate neid.
Ja matemaatika raamatukogu annab teile kasulik
konstandid, nagu pi ja e.
Nüüd, võrreldes standardse raamatukogud teiste programmide
keeled, C Standard Raamatukogud on tõesti väike,
kuid nad on veel suur hulk asju.
Ja see ei tähenda, et Standard Raamatukogud on
ainult C raamatukogudes, seal on palju rohkem seal
maailm teid kasutada, sealhulgas CS50 Raamatukogu,
kartograafia raamatukogude kodeerimiseks ja dekodeerimiseks
funktsioone, raamatukogude funktsioonid kodeerida ja
taasesitada video, ja nii edasi.
>> See viib meid oluline kõrvale.
Üks olulisi oskusi insener on teada
vahendeid oma tööriistakasti nii, et saate kasutada
neile ja vältida jalgratta leiutamist kui
sa pead seda tegema.
Kuna programmeerijad, raamatukogud on üks tähtsamaid
tööriistad oleme.
Kui sa leiad end silmitsi ülesandega, mis tundub tüütu või
igapäevaseks, nagu leida pikkus C string, siis
peaks endalt küsima, kui see võib olla nii, et
keegi juba teinud sama asja enne.
Võimalik, et sa leiaksid mõne
aitab jooksul raamatukogu.
>> Nii tehnilises mõttes, raamatukogu binaarfaili et
on koostanud ühendab kogumine
objekti faili kasutades tööriista nimega, siis
arvasid, linker.
Objekti failid on need. O faile, mis sa saad, kui sa
koostama C lähtekoodi.
Kui programmeerijad kirjutavad raamatukogud, nad tavaliselt
eristama oma C-koodi kahte tüüpi faile:
päisefaile ja rakendamise faile.
Päisefail kokkuleppeliselt antakse. H faililaiend,
ja see sisaldab koodi, mis kinnitab raamatukogu
ressursse, mis on olemas, kus saab kasutada.
Kõnealused vahendid hõlmavad ülesandeid, muutujad, structs,
definitsioone, ja nii edasi, ja koos nad on
tavaliselt nimetatakse liides.
Tegelikult, kui sa kunagi ei tea, mida on raamatukogus,
päisefaile on koht, kust otsida.
>> Näiteks saate tõmba usr / include / stdio.h ja kontrollida
kõike sa kunagi tahtnud teada
standard IO raamatukogu.
Seal on palju asju siin, ja see võib võtta natuke
aeg Wade kaudu.
Kuid koos Google ja manpages, see on
koht, kuhu minna, kui sa ei tea, kuidas standard I / O
raamatukogu funktsioonid töötavad.
Nii et üks võti on tähele panna siin, kuigi see, et päisefaile
tavaliselt ei hõlma funktsiooni mõisted -
see tähendab, et tegelik funktsioon rakendusi.
See on näide oluline infotehnoloogia
põhimõtet nimetatakse tiedonpiilotus, millele on viidatud ka
korda kapseldus.
>> Nagu kasutaja või kliendi raamatukogu, sa ei pea
teadma selle sisemust raamatukogu
Selleks, et seda kasutada.
Nägin printf lihtsalt natuke tagasi?
Oleks sa kunagi näinud tegelikku koodi enne?
Noh, ma eeldan, et sa ei ole, isegi kui te
on kasutanud printf tonni korda.
Kõik, mida pidin teada oli funktsiooni deklaratsioon kohal
aastal stdio.h header fail.
Igatahes, kasuks hea info peidus on, et te
ja programme sa kirjutad on kaitstud mis tahes muudatusi
kood rakendamise raamatukogu funktsioonid.
Kui rakendamise printf muudatusi, ei pea te
minna ja muuta kõik oma programmid, mis kasutavad printf.
>> Nii et kui ei rakendamiseks minna?
Noh, jälle tavapäraselt rakendamise läheb
faili. c faililaiend.
Tavaliselt päisefaile ja rakendamise faili käima
käes, nii et kui sul deklareeritud hunnik uusi string
funktsioonide mystring.h, siis saate määratleda kõik
need funktsioonid mystring. c.
Nii siis päise ja rakendamise failid on seejärel
koostatud, luues objekti faile, mis on siis seotud
kokku toota binaarne raamatukogu faili.
Raamatukogu kirjanik siis laeva binaarfaili mööda
koos päisefaile programmeerijad, kes soovivad kasutada
raamatukogu.
Sel hetkel,. C rakendamise failid ei ole
vaja, välja arvatud kompileeri raamatukogu nullist, nii
nad sageli välja jäetud.
>> Et kasutada C raamatukogu, mida sa pead tegema kahte asja.
Esmalt tuleb # include raamatukogu päisefaile ja
lähtekoodi fail, kus soovite kasutada
raamatukogu kood.
See teavitab koostaja kõik deklaratsioonid
funktsioone, muutujad, structs lt jne olemas
päisefaile nii et tõlkija saab üks, kindlustada, et
sa kasutad raamatukogu ressursside õige,
ja kaks, luua asjakohane koost koodi.
Sõltuvalt sellest, kus raamatukogu päisefaile on
asub, # include süntaks on erinev.
Kui päisefaile asuvad süsteemi
Vaikimisi sisaldab kataloog -
Tavaliselt usr/include--
siis noolsulgudes süntaks on kasutatud, nagu # include
.
Kui header failid asuvad samas
kataloogi oma koodi, jutumärke süntaks on
kasutatud, nagu # include "mylib.h".
>> Teine asi, mida sa pead tegema on ühendada ka kahekomponentsete
teegi faili, kui sa kompileerida koodi.
See on super oluline samm.
Mäletad meie varasem arutelu, kuidas header
failid ei sisalda rakendamise koodeksit?
Kui te unustate seda sammu, saad vigu umbes
defineerimata sümbolite viidatud oma koodi.
Et seda lahendada, kasutage-l lipu järgneb kohe
ilma tühiku nime raamatukogu.
Paljudes süsteemides, kaasa arvatud seadme, C Standard
Raamatukogud on automaatselt seotud sinu jaoks.
Kuid matemaatika raamatukogu on mõnikord komplekteeritud eraldi
ja võib tekkida vajadus siduda-lm.
Seadmele, me hoolitseme sinu eest, ja me ka
siduda CS50 raamatukogu-lcs50.
Näete kõik see seade sisse, kui sa jooksed teha.
>> Nüüd peaks sul olema teadmisi, mida on vaja kasutada
raamatukogude C. Avastamisrõõmu.
Minu nimi on Nate Hardison, ja see on CS50.