静态库/动态库详解

本文详细探讨了静态库和动态库的概念、区别及使用场景。静态库在编译时会被链接到可执行文件中,增加文件大小但减少运行依赖;动态库则在运行时加载,节省磁盘空间但可能因缺失依赖导致程序无法运行。了解两者特点对于优化软件性能和管理依赖至关重要。
摘要由CSDN通过智能技术生成
	3大衍生版本
		1、Minix/linux
		2、system V
		3、带界面的macOS,iOS,Berkley
	linux的来源	芬兰的一位大学生引入了一切皆文件的理念
	GPL许可证	保证了linux的共享性
	GNU工程	是自由软件基金会创立,宗旨是法院一个不商业化的Unix系统
	POSIX标准	统一了系统接口编程规范
	Linux的发行版
		Debian
		Ubuntu
		Fedora
		Redhat
		CentOS
	GNU编译器
		将程序员写的代码变为机器语言的工具
	编译的过程
		预处理-E 生成.i	生成标准C代码
		编译 -S 生成.S		生成汇编
		汇编 -c 生产.o		将汇编翻译为二进制语言
		链接 -o					将多个.o合并为一个可执行文件
	文件的后缀
		.h头文件
		.gch头文件编译后的文件
		.c源文件
		.i预处理文件
		.s汇编文件
		.o目标文件
		.a静态库文件
		.so动态库文件
	头文件的作用
		声明对应的.c文件中有哪些函数和全局变量
		定义结构体,联合,枚举,宏,类型重定义
	预处理指令
		#include
			声明头文件
		#define
			定义宏常量
		#undef
			define的结束标志
		#ifdif
			等于if define
		#ifndif
			等于if not define
		#elif
			等于else if
		#endif
			结束标
		#
			将标识符转换成字符串
		##
			a##b 合并为一个
		#error
			编译时报错
		#warning
			把警告当成错误
		#pragma
			#pragma once
				文件只能被调用一次,防止文件重复调用,功能类似头文件卫士
			#pragma comment(类型,"文件名")
				类似于include“ ”会把指定文件包含到本文件中
			#pragma werror(disable xxxx)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值