C语言中的接口如何实现?它和函数的定义有啥区别,请C高手来指导,杜绝Java的接口和类的回答因为我精通JAVA
展开全部
C语言中接口和函数其实没什么差别,只是有些人的习惯问题,不过一叫接口的都是针对某一个模块的功能函数集合,像一个图片采集模块一般就会有三种方式,1、头文件和.c文件;2、头文件和.so动态库;3、头文件和.a静态库。在进行程序编写时我们要添加头文件,在进行编译时,必须加入,该模块的.c或.so或.a,一种就行。
一般我们编写小函数接口,一般需要一个.h和一个.c就行了。函数的声明都是在.h中,实现都在.c中,当模块编写.c有点大时,我们可以为了编译时的速度,把.c文件编译成.so和.a。
//hello.h
#ifndef _HELLO_H_
#define _HELLO_H_
//#define 宏定义也应该在这
#include <stdio.h>
void hello();
#endif
//hello.c
#inlcude "hello.h"
void hello() {
printf("Hello word!");
}
大概就是这样,只不过我是linux下的,函数接口定义大同小异吧
一般我们编写小函数接口,一般需要一个.h和一个.c就行了。函数的声明都是在.h中,实现都在.c中,当模块编写.c有点大时,我们可以为了编译时的速度,把.c文件编译成.so和.a。
//hello.h
#ifndef _HELLO_H_
#define _HELLO_H_
//#define 宏定义也应该在这
#include <stdio.h>
void hello();
#endif
//hello.c
#inlcude "hello.h"
void hello() {
printf("Hello word!");
}
大概就是这样,只不过我是linux下的,函数接口定义大同小异吧
展开全部
C语言中的接El用函数指针来实现。变量指针指向的是一块数据,指针指向不同的变量则取到的是不同的数据。
函数指针指向的是一段代码(即函数),指针指向不同的函数,则具有不同的行为。以变应变正是函数指针的威力所在,C语言中的接口可以朴素的定义为:一组相关函数指针+所需要的数据结构。
函数指针指向的是一段代码(即函数),指针指向不同的函数,则具有不同的行为。以变应变正是函数指针的威力所在,C语言中的接口可以朴素的定义为:一组相关函数指针+所需要的数据结构。
参考资料: http://wenku.baidu.com/view/6c161a8502d276a200292e2c.html
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-01-24
展开全部
c语言是没法实现接口的。最多也就实现类,用strut 结构体中包含函数指针做成员来实现简单的类,然后构造函数是一个专门的函数。说实话,c实现接口没意义的。你要想实现接口,只有在一个新的struct里面包含一个子struts,然后给新的strut里添加一个函数指针域,这个函数指针指向一个有接口功能的函数~
追问
有具体的代码么!
追答
Linux内核里遍地都是这样的代码...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询