如何编写API程序

时间:2011-07-19 16:49:03

标签: c api

我想知道如何编写一个可以导出一些API函数的程序。

例如:假设我的函数很少,让我们把add(int x,int y),mul(int x,int y)sub(int x,int y)。

如何在c中编写守护进程,以便将API导出到外部世界。

如何从其他程序访问这些API?

我期待从代码的角度来看...提前谢谢......

4 个答案:

答案 0 :(得分:2)

这取决于您对API的意思。

创建库

创建一个头文件。这将是您API的“界面”。想要使用您的库的程序必须包含它才能执行此操作。

libexample.h

int add(int x,int y);
int mul(int x,int y);
int sub(int x, int y);

然后,您可以继续以您喜欢的系统特定方式实现您的库。

创建服务请求的程序

在这种情况下,确实你想要一个守护进程并且可能想要使用RPC。使用此方案,外部程序可以通过网络调用您的功能。

答案 1 :(得分:1)

我能给你的最简单的答案是Apache Thrift。您定义了一个服务接口(一组功能签名),并将其设置为侦听端口(该库为您进行网络呼叫)。然后客户端可以连接并轻松调用您公开的方法。这在语言之间非常有效。

答案 2 :(得分:1)

API (应用程序编程接口)是一个抽象概念,用户可以如何调用API提供程序的规范

库是一组目标文件,它们可以导出一些符号(数据和函数),并且可能有初始值设定项和终结符。

库的API由导出的符号和这些符号的类型组成,这些符号将放在头文件中,因此库的调用者可以使用该头文件来访问您提供的符号。

RPC(远程过程调用)服务的API将位于关联的IDL文件中,这相当于头文件。

SOAP服务的API将位于关联的WSDL文件中。

答案 3 :(得分:0)

在linux中你需要在Windows中使用* .so - DLL。无论如何,你需要创建一个库 - 静态或动态。看一下共享库(Linux)或DLL(Windows)。