[Powered by Google Translate] NATE Hardison: Ohjelmoinnissa kirjasto on kokoelma
liittyvien prewritten koodi.
Kirjastot ovat miten me ohjelmoijat, yhteisiä ja
hyödyllinen koodi toistensa kanssa, ja eri ohjelmien me
kirjoittaa, ja jopa eri prosessit käynnissä
Samalla meidän tietokoneissa.
>> Tutkitaan hieman.
Yksi yleisempiä tehtäviä, että olet luultavasti
käyttänyt on printf toiminto.
Nyt, printf ei ole mikään maaginen toiminto, joka on ollut
koodattu tietokoneeseen -
Pikemminkin se on osa C Standard Kirjastot, jotka ovat
kokoelma toimintoja mukana
C-ohjelmointikieli.
Koska printf ei rakennettu tietokone, se tarkoittaa, että
siellä oli joitakin ohjelmoija, joka todellisuudessa meni ja kirjoitti
printf toiminto ja mukana on muun standardin
kirjastot jotta tulevien ohjelmoijien ei tarvitse
kahtena vaivaa.
Ja olemme varmoja kiitollisia, että näin on, koska tarkistaa
kuinka paljon koodia se todellisuudessa vie toteuttaa printf.
>> C Standard kirjastoja, joista printf kuuluu, ovat
yksi tärkeimmistä työkalut
on torjunnassa CS50.
Lisäksi panos-tuotos-kirjasto, jossa
printf elämää, on olemassa joukko muita kirjastoja
luultavasti käyttää aikana CS50.
Esimerkiksi merkkijono kirjastossa on toimintoja
vertaa C jouset, saavat pituutta, ja liität ne.
Ja matemaattisen kirjaston saat hyödyllistä
vakiot, kuten pi ja e..
Nyt, verrattuna tavanomaiseen kirjastojen muiden ohjelmien
kielet, C Standard Kirjastot ovat todella pieniä,
mutta ne on vielä huomattava määrä tavaraa.
Ja se ei ole sanoa, että Standard Kirjastot ovat
Vain C-kirjastot, on paljon enemmän siellä
maailman voit käyttää myös CS50 kirjasto,
kartografia kirjastot salaus ja salauksen
toimintoihin, kirjastoja, joilla on toimintoja koodaamaan ja
toistaa video-, ja niin edelleen.
>> Tästä pääsemmekin tärkeän syrjään.
Yksi keskeinen osaaminen suunnittelu on tietää
työkaluja oman työkalupakin, jotta voit käyttää
ne ja välttämään pyörän keksimistä uudelleen, ellei
sinun täytyy tehdä niin.
Kuten ohjelmoijat, kirjastot ovat yksi tärkeimmistä
työkaluja meillä.
Kun löydät itsesi edessään tehtävä, joka näyttää ikävä tai
tavallisia, kuten löytää pituus C merkkijono, et
pitäisi kysyä itseltäsi, jos se voisi olla, että
joku on jo tehnyt saman aiemmin.
Mahdollisuudet ovat, että voit löytää joitakin
auttaa sisällä kirjastossa.
>> Joten teknisesti ottaen kirjasto on binaaritiedosto, joka
on tuotettu yhdistämällä kokoelma
objektin tiedostoja työkalu nimeltään, voit
Arvasit oikein, linkkeri.
Object-tiedostot ovat. O tiedostot saat kun
kääntää C lähdekoodi.
Kun ohjelmoijat kirjoittaa kirjastot, he yleensä
erottaa niiden C-koodin kahteen tiedostotyyppejä:
header-tiedostot ja täytäntöönpanon tiedostoja.
Header tiedosto yleissopimuksessa annetaan. H tiedostopääte,
ja se sisältää koodin, joka ilmoittaa kirjaston
resurssit, jotka ovat käytettävissä voit käyttää.
Nämä resurssit ovat funktioita, muuttujia, tietueet,
tyypin määritelmät, ja niin edelleen, ja yhdessä ne ovat
kutsutaan yleisesti rajapinnan.
Itse asiassa, jos olet joskus miettinyt mitä on kirjasto,
header tiedostot ovat paikka etsiä.
>> Esimerkiksi, voit vetää ylös usr / include / stdio.h ja tarkista
ulos kaikki mitä olet halunnut tietää
standardin io kirjastoon.
Siellä on paljon tavaraa täällä, ja se voi kestää hieman
aikaa kahlata läpi.
Kuitenkin yhdessä Googlen ja ohjesivut, tämä on
paikka mennä, jos mietit miten tavallinen I / O
Kirjasto toimii.
Joten yksi keskeinen asia huomata tässä on kuitenkin se, että header tiedostot
tyypillisesti eivät sisällä toimintoa määritelmät -
, joka on todellinen toiminto toteutuksia.
Tämä on esimerkki tärkeästä tietojenkäsittelytiede
periaatetta kutsutaan tiedonpiilotus myös viitattu
kertaa kuin kapselointi.
>> Koska käyttäjä tai asiakas kirjasto, sinun ei tarvitse
tietää sisäosat kirjasto
velvoittaa käyttämään sitä.
Muistan nähneeni printf vain hieman sitten?
Olitko koskaan nähnyt todellista koodia ennen?
No, oletan, että et ole, vaikka saatat
ovat käyttäneet printf tonnia kertaa.
Kaikki sinun piti tietää oli tehtävä ilmoitus esillä
vuonna stdio.h otsikkotiedosto.
Joka tapauksessa hyötyä hyvän tiedonpiilotus on, että
ja ohjelmat kirjoitetaan eristettynä muutokset
koodi täytäntöönpanon kirjaston toimintoja.
Jos täytäntöönpanon printf muutoksia, sinun ei tarvitse
mennä ja muuttaa kaikki ohjelmat, jotka käyttävät printf.
>> Joten mistä täytäntöönpanoa mennä?
No, jälleen Sopimuksen mukaan täytäntöönpanosta menee
tiedosto. C tiedostotunniste.
Yleensä header-tiedostot ja täytäntöönpano tiedostot kulkevat käsi
kädessä, joten jos olet julistettu joukko uusia merkkijonon
toimintoja mystring.h, niin sinun määrittää kaikki
nämä toiminnot mystring. c.
Joten sitten header ja täytäntöönpanoon tiedostot sitten
kootaan, luodaan objekti tiedostot ovat sitten linkitetty
yhdessä tuottavat binary kirjaston tiedoston.
Kirjasto kirjailija sitten lähettää binaaritiedosto pitkin
kanssa header tiedostot ohjelmoijia, jotka haluavat käyttää
kirjastoon.
Tässä vaiheessa. C toteuttamiseen tiedostot eivät ole
tarvitaan, paitsi kääntää kirjastoon tyhjästä, joten
he usein jätetään pois.
>> Voit käyttää C kirjasto, sinun täytyy tehdä kaksi asiaa.
Ensinnäkin, sinun täytyy # include kirjaston header-tiedostot ja
lähdekooditiedostoa missä haluat käyttää
kirjaston koodi.
Tämä ilmoittaa kääntäjä kaikkien ilmoitusten
funktioita, muuttujia, tietueet, jne., läsnä
header tiedostot niin, että kääntäjä voi yksi, vakuuttaa, että
käytät kirjaston resurssien oikealla tavalla,
ja kaksi, tuottaa sopiva kokoonpano koodi.
Riippuen siitä, missä kirjaston header-tiedostot ovat
sijaitsee, # include syntaksi vaihtelee.
Jos otsikko tiedostot sijaitsevat järjestelmän
Oletuksena ovat hakemisto -
tyypillisesti, usr/include--
Sitten kulmarautojen syntaksia käytetään, kuten # include
.
Kuitenkin, jos otsikko tiedostot sijaitsevat samassa
hakemistoon oman koodin, lainausmerkki syntaksi on
käytetään, kuten # include "mylib.h".
>> Toinen asia mitä sinun tarvitsee tehdä on yhdistää vuonna binary
Kirjaston tiedostoa kun kääntää koodin.
Tämä on erittäin tärkeä askel.
Muista meidän aikaisempi keskustelumme siitä, miten otsikko
tiedostot eivät sisällä täytäntöönpanon koodia?
Jos unohdat tämän vaiheen, saat virheitä,
määrittelemätön symbolit viitataan koodissa.
Voit ratkaista tämän, käytä-l lipun seuraa välittömästi
ilman tilaa, jonka nimi kirjaston.
Monissa järjestelmissä, kuten laite-C Standard
Kirjastot automaattisesti linkitetty sinulle.
Kuitenkin matematiikan kirjasto on joskus mukana erikseen
ja ehkä liittyy-lm.
Laitteeseen, me hoidamme tämän sinulle, ja me myös
linkittää CS50 kirjasto-lcs50.
Voit nähdä kaikki tämä laite kun ajaa tekemään.
>> Nyt sinulla pitäisi olla tietoa sinun täytyy käyttää
kirjastoissa C. On hauskaa tutkia.
Nimeni on Nate Hardison, ja tämä on CS50.