- 函数库实质上就是没有经过链接的二进制文件,是开发人员编写的实现特定功能的多个函数,在经过编译后生成的二进制机器码而没有进行链接
- 一般函数库会包括两种格式的文件.a/.so 和.h
静态库类型为.a
动态库类型为.so
静态库和动态库都属于函数库,两者的区别在于,当使用静态库时,调用库内函数时,编译器会从库中找到该函数并将其链接到调用的位置,在使用动态库时,当使用库内函数时,编译器会从库中找到函数然后连接到代码段的某一块位置,调用处会跳转到加载的哪一处运行,因此使用静态库链接出来的文件会比动态库大
3.c语言中有很多库函数,典型的包括字符串库以及数学库
在linux环境下使用数学库时需要在指令后面添加-lm指令,意为链接math库
//自己实现mem内存操作系列函数和str字符串操作系列函数,并感受其中的区别
//-lm 就是告诉编译器到libm中查找所用的函数,告诉编译器需要的数学函数到这个库中去查找