文档章节

c 静态库与动态库

memristor
 memristor
发布于 2014/05/31 16:40
字数 342
阅读 25
收藏 0

创建库可以在多个程序中复用相同的代码

#include<>代表标准头文件,通常unix在/usr/local/include或/usr/include下寻找头文件, window在mingw下的include中寻找

#include"" 本地目录


如何共享.h 文件?

  1. 将头文件保存在标准库中,使用#include<>

  2. 在include语句中使用完整路径名, #include "/home/weiwei/clib/encrypt.h"

  3. 告诉编译器去哪里需找头文件 ,-Ixxx 意思除了默认头文件搜索路径(比/usr/include等)外同时还路径xxx下搜索需要被引用头文件.

用完整路径名共享.o目标文件


使用文件存档就可以一次性告诉编译器需要哪一批目标文件,更加方便,存档中包含多个.o文件

存档命令 ar

ar -rcs    r表示如果a文件存在,就更新,c表示创建文档时不显示反馈信息,s表示在创建a文件的时候建立索引

.a文件都是以lib开头的,存档是静态库,可以把存档保存在标准目录,也可以放在其他目录中

[weiwei@localhost lib]$ ar -rcs libstr.a encrypt.o len.o

静态库调用

[weiwei@localhost lib]$ gcc main.c -L/home/weiwei/Desktop/c/lib -lstr  -o main

-L选项告诉编译器去哪个目录去找 -l后面跟存档名


© 著作权归作者所有

共有 人打赏支持
memristor
粉丝 45
博文 203
码字总数 176319
作品 0
长沙
程序员
私信 提问
Head First C 第八章 静态库与动态库 创建动态库

Head First C 第八章 静态库与动态库 创建动态库 动态库是什么 静态库文件,需要在链接过程中和主程序链接在一起,如果你想改变某个部分的功能,或者发布不同版本,就需要修改这个代码并全部...

AlexTuan
2016/04/02
33
0
静态库和动态库

静态库和动态库 ASPIRE2017-01-1127 阅读 gccLinux =Start= 缘由: 补充系统知识 正文: 参考解答: 我们通常把一些公用函数制作成函数库,供其它程序使用(代码的复用)。函数库可分为静态库...

ASPIRE
2017/01/11
0
0
Linux下静态库和动态库(共享库)的制作与使用

Linux下静态库和动态库(共享库)的制作与使用 Linux操作系统支持的函数库分为静态库和动态库,动态库又称共享库。linux系统有几个重要的目录存放相应的函数库,如/lib /usr/lib。 静态函数库...

木雨山
2011/07/29
0
0
C语言库的制作

制作C语言库 编写头文件,在文件内声明要用到的函数, libh.h #include <stdio.h> // 两数相加 int add(int a, int b); // 绝对值 int mabs(int a); 编写c语言库源码文件, 在文件内定义之前...

首席撸起水泡
2016/01/08
71
0
JSP标签回顾

1.内置标签 a.请求转发: b.动态页面包含: 注:静态包含和动态包含的区别 1) 语法不同 静态包含语法: 动态包含语法: 2)参数传递不同 静态包含不能向被包含页面传递参数 动态包含可以向被包...

Mr_欢先生
2017/11/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

【PG内核】事务ID冷冻简述

数据库代码中事务ID的类型TransactionId定义为:typedef uint32 TransactionId。因此事务ID最大值为2^32-1=4294967295。 事务ID是需要循环使用的,为了做到这一点,数据库在做vacuum时将很老...

movead
21分钟前
13
0
深入学习SpringMVC以及学习总结

一、优点: 1.SpringMVC简化web程序开发; 2.SpringMVC效率很好(单例模式); 3.SpringMVC提供了大量扩展点,方便程序员自定义功能; 如果想学习Java工程化、高性能及分布式、深入浅出。微服...

编程SHA
21分钟前
1
0
关于开源分布式事务中间件Fescar,我们总结了开发者关心的13个问题

开源分布式事务中间件 Fescar 自1月10日上线v0.1版本以来,受到了开发者们的极大关注(watch249,star3005,fork649,社区讨论的issue58,数据统计于1月17日14:00),可见,天下苦分布式事务...

阿里云官方博客
22分钟前
1
0
斯皮格尔:我们敢于采纳非常疯狂的创意

“阅后即焚”照片分享应用 Snapchat 母公司 Snap 的 CEO 埃文-斯皮格尔(Evan Spiegel)近日接受了英国《金融时报》记者的采访,谈到了该公司的未来发展,与社交网络 Facebook 的竞争,限制自己...

linuxCool
23分钟前
1
0
javaweb文件上传以及文件上传成功后但是目录中没有显示

经过看别人写的代码然后自己实际操作一遍,基本都是搬运也是为了练习。1:创建fileUpLoad.jsp<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UT......

小橙子的曼曼
25分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部