[Powered by Google Translate] NATE Hardison: Dalam pemrograman, perpustakaan adalah kumpulan
terkait prewritten kode.
Perpustakaan adalah bagaimana kita, sebagai programmer, saham biasa dan
Kode membantu satu sama lain, dengan program yang berbeda kita
menulis, dan bahkan dengan proses yang berbeda berjalan pada
waktu yang sama di komputer kita.
>> Mari kita menjelajahi sedikit.
Salah satu fungsi yang lebih umum yang mungkin Anda sudah
telah menggunakan adalah fungsi printf.
Sekarang, printf tidak beberapa fungsi ajaib yang sudah
keras-kode ke dalam komputer -
bukan, itu bagian dari Perpustakaan Standar C, yang
koleksi fungsi yang datang dengan
C bahasa pemrograman.
Karena printf tidak dibangun ke dalam komputer, yang berarti bahwa
ada beberapa programmer yang benar-benar masuk dan menulis
printf fungsi dan dibundel dengan sisa standar
perpustakaan sehingga programmer masa depan tidak harus
menduplikasi usaha.
Dan kami yakin bersyukur bahwa itu yang terjadi, karena cek
berapa banyak kode yang sebenarnya dibutuhkan untuk mengimplementasikan printf.
>> The C Standar Perpustakaan, yang merupakan bagian printf, yang
salah satu alat yang paling penting Anda
miliki dalam menangani CS50.
Selain perpustakaan input-output di mana
printf hidup, ada beberapa perpustakaan lain yang
Anda mungkin akan menggunakan selama CS50.
Sebagai contoh, perpustakaan string yang memiliki fungsi untuk
membandingkan string C, mendapatkan panjang mereka, dan menyatukan mereka.
Dan perpustakaan matematika memberi Anda membantu
konstanta, seperti pi dan e.
Sekarang, dibandingkan dengan perpustakaan standar pemrograman lain
bahasa, C Standar Perpustakaan sangat kecil,
namun mereka masih memiliki sejumlah besar barang.
Dan itu tidak berarti bahwa Perpustakaan Standar adalah
hanya C perpustakaan, ada lebih banyak di luar sana dalam
dunia untuk Anda gunakan, termasuk Perpustakaan CS50,
kartografi perpustakaan dengan enkripsi dan dekripsi
fungsi, perpustakaan dengan fungsi untuk mengkodekan dan
memutar video, dan sebagainya.
>> Hal ini membawa kita ke samping penting.
Salah satu keterampilan penting dari rekayasa adalah mengetahui
alat yang tersedia dalam kotak peralatan Anda sehingga Anda dapat menggunakan
mereka dan menghindari menciptakan kembali roda kecuali
Anda harus melakukannya.
Sebagai programmer, perpustakaan merupakan salah satu yang paling penting
alat yang kita miliki.
Bila Anda menemukan diri Anda menghadapi tugas yang tampaknya membosankan atau
biasa, seperti menemukan panjang string C, Anda
harus bertanya pada diri sendiri apakah itu mungkin terjadi bahwa
seseorang sudah melakukan hal yang sama sebelumnya.
Kemungkinannya adalah bahwa Anda bisa menemukan beberapa
membantu dalam perpustakaan.
>> Jadi dalam hal teknis, perpustakaan adalah file biner yang
telah diproduksi dengan menghubungkan bersama koleksi
objek file menggunakan alat yang disebut, Anda
menebaknya, linker.
File objek adalah file-file o yang Anda dapatkan ketika Anda.
mengkompilasi kode sumber C.
Ketika programmer menulis perpustakaan, mereka biasanya
memisahkan mereka kode C menjadi dua jenis file:
file header dan file implementasi.
Sebuah file header oleh konvensi diberikan ekstensi file h.,
dan mengandung kode yang menyatakan perpustakaan
sumber daya yang tersedia untuk Anda gunakan.
Sumber daya ini mencakup fungsi, variabel, structs,
definisi jenis, dan sebagainya, dan bersama-sama, mereka
sering disebut sebagai antarmuka.
Bahkan, jika Anda pernah bertanya-tanya apa yang ada di perpustakaan,
file header adalah tempat untuk melihat.
>> Sebagai contoh, Anda dapat menarik usr / include / stdio.h dan memeriksa
tahu segala sesuatu yang Anda pernah ingin tahu tentang
yang io perpustakaan standar.
Ada banyak hal di sini, dan dapat mengambil sedikit
waktu untuk mengarungi.
Namun, seiring dengan Google dan manpages, ini adalah
tempat untuk pergi jika Anda bertanya-tanya bagaimana standar I / O
fungsi perpustakaan bekerja.
Jadi, satu hal kunci yang perlu diperhatikan di sini, meskipun, adalah bahwa file header
biasanya tidak termasuk definisi fungsi -
yaitu, implementasi fungsi yang sebenarnya.
Ini adalah sebuah gambaran dari sebuah ilmu komputer penting
prinsip yang disebut menyembunyikan informasi, juga disebut di
kali enkapsulasi.
>> Sebagai pengguna atau klien dari perpustakaan, Anda tidak perlu
tahu tentang internal perpustakaan di
memesan untuk menggunakannya.
Ingat melihat printf hanya sedikit lalu?
Apakah Anda pernah melihat kode yang sebenarnya sebelum?
Nah, saya berasumsi bahwa Anda belum, meskipun Anda mungkin
telah menggunakan ton printf kali.
Yang Anda harus tahu adalah hadir deklarasi fungsi
dalam file header stdio.h.
Pokoknya, manfaat menyembunyikan informasi yang baik adalah bahwa Anda
dan program yang Anda tulis terisolasi dari setiap perubahan
kode pelaksanaan fungsi perpustakaan.
Jika pelaksanaan perubahan printf, Anda tidak memiliki
untuk pergi dan mengubah semua program Anda yang menggunakan printf.
>> Jadi mana implementasi pergi?
Nah, sekali lagi, dengan konvensi, pelaksanaannya berjalan dalam
file dengan ekstensi file. c.
Biasanya, file header dan file implementasi pergi tangan
di tangan, jadi jika Anda sudah menyatakan sekelompok string baru
fungsi dalam mystring.h, maka Anda akan menentukan semua
fungsi-fungsi di mystring c..
Jadi file header dan implementasi yang kemudian
disusun, membuat file objek yang kemudian dihubungkan
bersama-sama untuk menghasilkan file library biner.
Penulis perpustakaan kemudian akan mengirimkan file biner bersama
dengan file header untuk programmer yang ingin menggunakan
perpustakaan.
Pada titik ini, c file. Pelaksanaannya tidak
diperlukan, kecuali untuk mengkompilasi ulang perpustakaan dari awal, sehingga
mereka sering ditinggalkan.
>> Untuk menggunakan library C, Anda harus melakukan dua hal.
Pertama, Anda harus menyertakan # header perpustakaan file dan
kode sumber file di mana Anda ingin menggunakan
perpustakaan kode.
Ini menginformasikan compiler dari semua deklarasi
fungsi, variabel, structs, dan lain-lain, hadir dalam
file header sehingga compiler dapat satu, memastikan bahwa
Anda menggunakan sumber daya perpustakaan dalam cara yang tepat,
dan dua, menghasilkan kode assembly yang sesuai.
Tergantung di mana file header perpustakaan adalah
terletak, sintaks # include bervariasi.
Jika file header yang terletak di sistem
standar termasuk direktori -
biasanya, usr/include--
maka sintaks kurung sudut digunakan, seperti dalam # include
.
Namun, jika file header yang terletak di sama
direktori sebagai kode Anda sendiri, sintaks kutipan ganda
digunakan, seperti dalam # include "mylib.h".
>> Hal kedua yang harus Anda lakukan adalah untuk menghubungkan dalam biner
library file ketika Anda mengkompilasi kode Anda.
Ini merupakan langkah penting super.
Ingat pembahasan sebelumnya kita tentang bagaimana sundulan
file tidak berisi kode implementasi?
Jika Anda lupa langkah ini, Anda akan mendapatkan error tentang
simbol tidak terdefinisi direferensikan dalam kode Anda.
Untuk mengatasi hal ini, gunakan l-bendera diikuti segera
tanpa ruang dengan nama perpustakaan.
Pada banyak sistem, termasuk alat, Standar C
Perpustakaan secara otomatis terkait untuk Anda.
Namun, perpustakaan matematika terkadang dibundel secara terpisah
dan mungkin perlu dikaitkan dengan-lm.
Pada alat, kami mengurus ini untuk Anda, dan kami juga
menghubungkan perpustakaan dengan CS50-lcs50.
Anda dapat melihat semua ini pada alat saat Anda jalankan make.
>> Sekarang Anda harus memiliki pengetahuan yang Anda butuhkan untuk menggunakan
perpustakaan di C. Bersenang-senang menjelajahi.
Nama saya Nate Hardison, dan ini adalah CS50.