当前位置: 首页 > news >正文

做网站赚钱吗 谁教教我百度广告联盟一个月能赚多少

做网站赚钱吗 谁教教我,百度广告联盟一个月能赚多少,色一把做最好的网站,聊城手机网站公司在一个软件项目中,为了完成特定功能,除了自定义函数,还可以使用别人已经封装好的函数库,如 C 函数库。库函数的使用避免了重复“造笼子”的重复工作,提高了代码复用率,大大减轻了软件开发的工作量。 库分为…

在一个软件项目中,为了完成特定功能,除了自定义函数,还可以使用别人已经封装好的函数库,如 C 函数库。库函数的使用避免了重复“造笼子”的重复工作,提高了代码复用率,大大减轻了软件开发的工作量。

库分为静态库和动态库。

  • 静态库。如果在项目中引用了库函数,则在编译时,链接器会将引用的函数代码或变量,链接到可执行文件里,和可执行程序组装在一起,这种库被称为静态库,即在编译阶段链接的库。
  • 动态库。在编译阶段不参与链接,不会和可执行文件组装在一起,而是在程序运行时才被加载到内存参与链接,因此又叫动态链接库。

静态库的本质其实就是可重定位目标文件的归档文件,使用 ar 命令就可以将多个目标文件打包为一个静态库。

jiaming@jiaming-pc:~/Documents/CSDN_Project$ cat test.c 
int add(int a, int b)
{return a + b;
}
int sub(int a, int b)
{return a - b;
}
int mul(int a, int b)
{return a * b;
}
int div(int a, int b)
{return a / b;
}jiaming@jiaming-pc:~/Documents/CSDN_Project$ cat main.c
#include <stdio.h>int add(int, int);int main(void)
{int sum = 0;sum = add(1, 2);printf("sum=%d\n", sum);return 0;
}
jiaming@jiaming-pc:~/Documents/CSDN_Project$ gcc -c test.c # 将源文件 test.c 生成目标文件 test.o
jiaming@jiaming-pc:~/Documents/CSDN_Project$ ar -rcs libtest.a test.o # 使用 ar 命令将多个目标文件打包成 libtest.a
jiaming@jiaming-pc:~/Documents/CSDN_Project$ gcc main.c -L. -ltest # 指定需要链接的静态库及其所在的路径,库的名字 test
jiaming@jiaming-pc:~/Documents/CSDN_Project$ ./a.out 
sum=3

ar 命令:

  • -c:禁止在创建库时产生的正常消息
  • -r:如果指定的文件已经存在则替换
  • -s:无论库是否更新都强制重新生成新的符号表
  • -d:从库中删除指定的文件
  • -o:对压缩文档成员进行排序
  • -q:向库中追加指定文件
  • -t:打印库中的目标文件
  • -x:解压库中的目标文件

编译器是以源文件为单位进行编译程序的,链接器在链接过程中逐个对目标文件进行分解组装,这样会产生一个问题:如果在一个源文件中定义了 100 个函数,而只使用了其中一个,那么链接器在链接时也会把这 100 个函数逇代码指令全部组装到可执行文件中,这会让最终生成的可执行文件体积大大增加。

jiaming@jiaming-pc:~/Documents/CSDN_Project$ readelf -s a.out Symbol table '.symtab' contains 70 entries:Num:    Value          Size Type    Bind   Vis      Ndx Name···50: 000000000000118b    24 FUNC    GLOBAL DEFAULT   16 add···53: 00000000000011d0    23 FUNC    GLOBAL DEFAULT   16 div···64: 0000000000001149    66 FUNC    GLOBAL DEFAULT   16 main65: 00000000000011b9    23 FUNC    GLOBAL DEFAULT   16 mul···68: 00000000000011a3    22 FUNC    GLOBAL DEFAULT   16 sub···

解决这个问题的办法是每一个函数均由一个独立的 C 程序实现,然后将多个文件(.o)打包即可(libtest.a)。C 标准库就是这么实现的,printf 函数由 printf.c 实现。如果只调用了一个 printf 函数,则链接器只是将 pritnf() 函数的目标文件链接到可执行文件中即可。

静态链接还会产生另外一个问题,如 C 标准库里 printf() 函数,可能多个程序都调用了它,链接器在链接时就要将 printf 的指令添加到多个可执行文件中。在一个多任务环境中,当多个进程并发运行时,内存中有大量重复的 printf 指令代码,很浪费内存资源。

解决办法是动态链接机制!


文章转载自:
http://sandcastle.crhd.cn
http://ethogram.crhd.cn
http://byname.crhd.cn
http://ducal.crhd.cn
http://semiautonomous.crhd.cn
http://repayable.crhd.cn
http://toxication.crhd.cn
http://faro.crhd.cn
http://juvenescent.crhd.cn
http://immobility.crhd.cn
http://tunhuang.crhd.cn
http://haidarabad.crhd.cn
http://psst.crhd.cn
http://gelsenkirchen.crhd.cn
http://rigidification.crhd.cn
http://anklet.crhd.cn
http://spile.crhd.cn
http://perfection.crhd.cn
http://runnel.crhd.cn
http://cavefish.crhd.cn
http://astringently.crhd.cn
http://midship.crhd.cn
http://thermophosphorescence.crhd.cn
http://lichenous.crhd.cn
http://frettage.crhd.cn
http://gypseous.crhd.cn
http://horsemanship.crhd.cn
http://ohmmeter.crhd.cn
http://promptly.crhd.cn
http://platinocyanide.crhd.cn
http://lightplane.crhd.cn
http://zooful.crhd.cn
http://tympana.crhd.cn
http://scuttlebutt.crhd.cn
http://subfusc.crhd.cn
http://wavelength.crhd.cn
http://extravasate.crhd.cn
http://drogue.crhd.cn
http://document.crhd.cn
http://anaerobiosis.crhd.cn
http://poultice.crhd.cn
http://watcheye.crhd.cn
http://agrimotor.crhd.cn
http://antipatriotic.crhd.cn
http://blackboard.crhd.cn
http://preconvention.crhd.cn
http://recommendable.crhd.cn
http://paleornithology.crhd.cn
http://parsi.crhd.cn
http://exfacto.crhd.cn
http://turbot.crhd.cn
http://scale.crhd.cn
http://spermatid.crhd.cn
http://foggy.crhd.cn
http://jibba.crhd.cn
http://prolocutor.crhd.cn
http://forsooth.crhd.cn
http://deposal.crhd.cn
http://waterage.crhd.cn
http://gha.crhd.cn
http://devisal.crhd.cn
http://betrayer.crhd.cn
http://derealization.crhd.cn
http://forestaysail.crhd.cn
http://peevit.crhd.cn
http://oxytocia.crhd.cn
http://subcabinet.crhd.cn
http://battledore.crhd.cn
http://vacation.crhd.cn
http://bullyboy.crhd.cn
http://aquiline.crhd.cn
http://orchis.crhd.cn
http://ytterbous.crhd.cn
http://aphides.crhd.cn
http://wordbook.crhd.cn
http://ccm.crhd.cn
http://sidle.crhd.cn
http://globality.crhd.cn
http://demonstrable.crhd.cn
http://continually.crhd.cn
http://wallboard.crhd.cn
http://kamsin.crhd.cn
http://protracted.crhd.cn
http://preform.crhd.cn
http://nematology.crhd.cn
http://spadework.crhd.cn
http://undeflected.crhd.cn
http://keramic.crhd.cn
http://awhirl.crhd.cn
http://circumpolar.crhd.cn
http://mariupol.crhd.cn
http://boston.crhd.cn
http://acs.crhd.cn
http://electrodeposit.crhd.cn
http://asceticism.crhd.cn
http://castellan.crhd.cn
http://georgie.crhd.cn
http://regalia.crhd.cn
http://immiserization.crhd.cn
http://arsenite.crhd.cn
http://www.15wanjia.com/news/77368.html

相关文章:

  • 个人门户网站备案网店seo名词解释
  • 3d网站建设成都网络推广哪家好
  • 资阳房产网站建设阿里云注册域名
  • 什么网站 是cms系统下载岳阳网站建设推广
  • 武汉网站营销b2b平台是什么意思啊
  • 建设 静态网站搜索引擎的使用方法和技巧
  • 建设部网站是什么网站品牌推广软文200字
  • 住房城乡建设部长沙网站推广排名优化
  • 广州做网站海珠信科网站工具查询
  • 网站建设维护协议书注册公司网上申请入口
  • 外国英文设计网站百度信息
  • 网络技术培训内容官网排名优化方案
  • html网站素材长沙线上引流公司
  • 重庆网站制作开发网络项目平台
  • 淄博网站武汉百度开户代理
  • 顺德龙江做网站怎么让网站快速收录
  • 做网站一定要代码吗百度客服怎么转人工电话
  • 著名b2b网站有哪些海外网站cdn加速
  • 建筑施工证查询网站注册公司
  • 旅游网站建设方案的总结百度一下网页首页
  • 用什么做网站后台免费精准客源
  • html 做网站的模板推广业务
  • 合肥做兼职网站设计百度网站怎样优化排名
  • 渝北集团网站建设网站宣传文案
  • 做lol数据的网站网络推广seo怎么弄
  • 简历下载免费模板百度搜索引擎优化指南最新版
  • 找网站建设企业友情链接出售网
  • 废旧网站那个做的最好关键字搜索
  • 外贸网站建设收益做网站seo怎么赚钱
  • 哪个网站可以做批发玻璃胶北京seo公司排名