标签:压缩 应该 g++ c++学习 ror osi 令行 编码 名称
静态库(Archives)
动态库(Shared Object)
标准库与库相关性
C标准库:libc
数学库单独:libm;需要调用数学函数时,显式链接数学库:g++ -o compute compute.c -lm
C++标准库:libstdc++
编译C++11程序,使用g++ -4.8 -std=c++11 ;对于Code::Blocks等集成开发环境,在编译器设置对话框中选用C++11选项
库的相关性
动态库的装载与卸载
动态库装载dlopen():头文件:“dlfcn.h”
函数查找与装载函数dlsym()
动态库卸载函数:dlclose()
动态库错误处理函数dlerror()
调用动态库中的函数,设函数名为g
混合c/c++编码时,c函数应该封装extern "C"{...}块中,确保名解析正确工作(c不支持函数重载)
链接选项:“-ldl”
void *handle = dlopen("libtest.so",RTLD_LAZY);
//声明函数指针指向动态库中的函数,按被调函数的名称查找
void (*test)() = dlsym(handle,"g");
(*test)();//使用函数指针调用动态库中的函数
dlclose(handle);
标签:压缩 应该 g++ c++学习 ror osi 令行 编码 名称
原文地址:http://www.cnblogs.com/hujianglang/p/6235103.html