IAR下怎么把自己写的“秘密”.c给别人用

       今天学到一手  急忙分享给各位,顺便给自己一个mark的地方!

/*****************************************************神奇分隔****************************************************/

       很多做开发的朋友都写过不少代码,尤其是当自己花了很多心血写出的函数时,有时会不愿让他人看到内部的程序流程,这也适用许多固件提供商,都会封装一个库给外部用户调用,现在我们可以自己编写库提供给别人调用,可以安全地访问函数内部的变量,也能保护重要流程不被查看到。

       一、这里我是用IAR环境,新建一个空项目,随意命名test_pro

IAR下怎么把自己写的“秘密”.c给别人用

       二、在此项目下右键option,在General Option下的Output栏目选择Library,在Library Configuration栏目选择Custom

IAR下怎么把自己写的“秘密”.c给别人用IAR下怎么把自己写的“秘密”.c给别人用

       三、在工程下新建一个.c和.h写自己的内容,添加到工程中

       在这里我用test1表示我们写的函数要传入的参数,内部的test_var表示函数内部才可使用此变量,也可以在函数test外修饰变量那就此.c文件的函数都可以使用啦,接下来做了点修改,并把test_var返回出去给外部用

       别忘了在.h中声明此函数出去哦

IAR下怎么把自己写的“秘密”.c给别人用IAR下怎么把自己写的“秘密”.c给别人用

       四、编译这个工程,可以在Output中看到自己的.a静态库啦,这时已经可以删除原来的test_func.c了,把此.a放到自己的另一个工程中导入使用(别忘了.h也加进去哦),并编写调用test函数

IAR下怎么把自己写的“秘密”.c给别人用IAR下怎么把自己写的“秘密”.c给别人用IAR下怎么把自己写的“秘密”.c给别人用

IAR下怎么把自己写的“秘密”.c给别人用

在线调试可以看到结果和我们test函数中编写的流程是一致的,这样我们就成功把自己的函数封装成了库给外部使用啦~

别人看不到函数体,可以调用提供给外面的返回值接口来使用内部变量,大家自行去丰富咯