189 8069 5689

c语言自定义函数裤,自定义函数C语言

关于c语言中如何创建自己的库函数能不能再详细的解释一下,谢谢了!!!

哈哈,选我吧!库分静态库和动态链接库,静态库以lib结尾,被编译器里的链接器识别。windows下动态库以dll结尾,被操作系统加载以模块方式映射到进程地址空间。一般初学者先学会创建的是静态库。静态库是一个无需重定位的函数集。怎么做到无需重定位呢?这是编译器做的编译工作,例如它指定开头的位置作为基址,剩下的代码用到的都是相对偏移。这样,这段二进制代码可以被放在内存中的任何位置执行,被写入了lib文件里。在lib文件里,包含了函数名与函数地址组成的结构体,通过它编译器可以找到lib文件里需要的二进制代码并以静态联编的方式写入我们调用它的exe文件里。这种代码是被塞进exe文件里而无需修改,并在程序执行时被用到。为了让库被别人调用,我们可以写一个头文件.h,包含函数原型及声明。

目前成都创新互联公司已为成百上千的企业提供了网站建设、域名、网站空间、网站托管、服务器托管、企业网站设计、蓬安网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

C语言中,如何自己定义一个库函数?

1、存为xx.h文件放在自创的文件夹下,声明#include“xx.h” 2、还可以存为xx.h文件直接与系统库文件放一起,声明#includexx.h(这样会快些)

C语言中,定义自定义库函数时该如何写对应的头文件

没有强制规定,但一般遵循以下原则:

1 功能类似或相关的一组函数写在同一个头文件中;

2 头文件命名应简单,尽量短,但可以通过文件名得知内部函数功能;

3 头文件名由数字、字母、下划线组成,不要有空白字符或其它符号;

4 为防止头文件重复引用,或嵌套引用,头文件应使用条件编译包含;

5 头文件中,应遵循先类型定义,后函数声明的顺序;

6 当头文件函数声明中,用到其它头文件中定义的类型时,在头文件开始处进行引用。

C语言:如何自己做库函数?

简单的一个例子,但是基本的程序编译的思想都在里面了,具体的需要你自己体会和查资料

跟着下面的步骤走

------------------------

第一步:我的电脑-属性-高级-环境变量

添加3个变量

1.名字:path 值:vc的安装目录里面包含cl.exe的bin目录路径+";"+vc目录下包含mspdb80.dll的目录的路径

比如我的是D:\Program Files\Microsoft Visual Studio 8\VC\bin;D:\Program Files\Microsoft Visual Studio 8\Common7\IDE;

2.名字:include 值:vc安装目录下的include目录,主要是为了找到头文件,我的是D:\Program Files\Microsoft Visual Studio 8\VC\include;D:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Include;

3.名字:lib 值:vc目录下包含库文件的目录路径

我的是D:\Program Files\Microsoft Visual Studio 8\VC\lib;D:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Lib;

第二步:需要下面两个文件

//-------------libdemo.c

#include stdio.h

void lib_func()

{

printf("this routine in lib\n");

}

//------------main.c

void lib_func();

int main(int argc, char *argv[])

{

lib_func();

}

第三步:命令

cl /c libdemo.c '编译libdemo.c 生成libdemo.obj

lib libdemo.obj '生成libdemo.lib 库文件

cl /c main.c '编译main.c

link main.obj libdemo.lib '生成main.exe

---------------------------------------------------

呵呵 加点东西,参看4楼的建议,在做个dll,COM组件就不做了,有点复杂了

1。把libdemo.c 稍微改下

//-------------libdemo.c

#include stdio.h

__declspec (dllexport) void lib_func()

{

printf("this routine in lib\n");

}

2。命令

cl /c libdemo.c main.c

link libdemo.obj /dll '生成libdemo.lib

link main.obj libdemo.lib


新闻名称:c语言自定义函数裤,自定义函数C语言
文章来源:http://cdxtjz.com/article/hodchh.html

其他资讯