C standart kutubxonasi statik kutubxona yoki dinamik kutubxona bo'ladimi?

C standart kutubxonasi funktsiyasi (ex.prinf, scanf) statik kutubxona vazifasi yoki dinamik kutubxona vazifasi deb hisoblanadimi?

4
Bu butunlay amalga oshirishga bog'liq, har qanday narsa bo'lishi mumkin, va hatto ikkalasi ham bir xil derazali kalitlarga bog'liq holda amalga oshirilishi mumkin. Darhaqiqat, javob berishning iloji yo'q. Mening dasturlashuvlar MSVCRT bilan sukut bo'yicha dinamik ravishda bog'lanadi, lekin bu nimani anglatadi ... hech narsa.
qo'shib qo'ydi muallif Damon, manba
Funktsiyaning statik yoki dinamik bo'lishi nimani anglatadi?
qo'shib qo'ydi muallif David Heffernan, manba
@MitchWheat Agar shunday bo'lsa, unda savol "Meni dasturni qanday qilib bog'lashimni aytib bera olasizmi?" ;-)
qo'shib qo'ydi muallif David Heffernan, manba
Men "bog'lanish" degan ma'noni anglatadi deb o'ylayman
qo'shib qo'ydi muallif Mitch Wheat, manba
@David: chindan .... :)
qo'shib qo'ydi muallif Mitch Wheat, manba

2 javoblar

bu dasturni qanday bog'lashingizga bog'liq. har ikkala yo'lni ham mumkin. VS da siz /Top reyting (statik) yoki /MD (dinamik) ni tanlashingiz mumkin. Gcc-da, dasturni statik kutubxonaga bog'lash uchun -static-libgcc bayroqini tanlashingiz mumkin.

http://gcc.gnu.org/onlinedocs/gcc/Link-Options manziliga murojaat qiling. .html gcc bayroqlari haqida ko'proq ma'lumot olish uchun va .

5
qo'shib qo'ydi
-static-libgcc faqat standart kodli kutubxona bo'lmagan libgcc ga tegishli. Odatdagi libc.so o'rniga libc.a ni ulashingiz mumkin.
qo'shib qo'ydi muallif wRAR, manba
javobingiz uchun tashakkur
qo'shib qo'ydi muallif user966379, manba
/ Top reyting va/MD, bog'laydigan variantlarini emas, balki kompilyatsiya variantlari.
qo'shib qo'ydi muallif Hans Passant, manba

Siz chindan ham g'amxo'rlik qilishingiz kerak emas.

Kompilyator, ba'zi standart funktsiyalarni, masalan, standartni belgilab bergan holda, maxsus bajarishi mumkin.

Ba'zida GCC bu kabi ishlarni amalga oshiradi, masalan, bu memsetni chaqiruvni loopga optimallashtirishi mumkin ...

Agar savolingiz sizning foo dasturini qanday bog'lagan bo'lsangiz, GNU/Linux-da ldd foo buyrug'iga javob beradi.

Cheers.

1
qo'shib qo'ydi