DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 127|回复: 0
打印 上一主题 下一主题

制作和使用自定义C库文件

[复制链接]
跳转到指定楼层
楼主
发表于 2011-4-29 11:35:10 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
制作和使用自定义C库文件
目标

1.制作一个库文件libGetMax.a ,其中包含一个外部函数GetMax 。 函数GetMax的作用是判断两个输入参数(int型)中的最大值,并返回最大值。
2.制作一个应用范例,使用库libGetMax.a中包含的GetMax函数。
库文件的生成
  为叙述方便,请在C盘根目录中新建一目录,并将其命名为libtest。以下将C:\libtest简称为工作目录。
  在ICCAVRIDE环境中新建两个文件,分别命名为 GetMax.c 和 GetMax.h,并保存至工作目录中。两文件内容如下所示:



//------GetMax.h的内容如下:------
#ifndef__GETMAX_LIB
#define__GETMAX_LIB
externintGetMax(inta,intb);
#endif




//------GetMax.c的内容如下:------
#include"GetMax.h"
intGettMax(inta,intb)
{
return((a>b)?a:b);
}

  执行File菜单下的 CompileFile... 项下的 ToObject 项,将 GetMax.c 编译生成相应的目标文件GetMax.o 。
  执行命令ilibw-alibGetMax.aGetMax.o生成库文件。可执行文件ilibw.exe位于icc安装完后的系统目录(默认安装时在C:\icc)的子目录bin中。为使用方便可将ilibw.exe拷贝至工作目录中使用。至此库文件libGetMax.a已生成,其对应的头文件为GetMax.h 。注意库文件的命名必须以“lib”字样开头,否则在IDE中编译下面的应用范例过程中自动链接时会报错(手动链接除外)。
应用范例的编写和编译

  在工作目录中建立一个工程Test.prj。工程Test.prj中包含一个C源程序文件Test.c。Test.C的源代码如下所示:


//------Test.c的源代码如下:------
#include"GetMax.h"
voidmain(void)
{
intResult,Value1,Value2;
Value1=0x10FF;
Value2=0x0FFF;
Result=GetMax(Value1,Value2);
}

  然后,将前一步骤生成的库文件libGetMax.a拷贝至icc安装完后的系统目录(默认安装时在C:\icc)的子目录lib中。再执行Project菜单下的Option项,修改Target表单中的AdditionalLib项,在文本框中输入GetMax(注意不能写成libGetMax.a)。
  完成上述步骤后,就以编译和调试test.prj。
  如果在其它工程中需要使用上述库函数GetMax,只需拷贝所需的GetMax.h和libGetMax.a,并进行相应配置就可以了。
  也可以在已有的库中增加一些自定义的函数。详细参考ICCAVRIDE中的在线帮助。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2025-7-31 05:58 , 耗时 0.097020 秒, 20 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表