C语言是一种面向过程的编程语言,它没有内置的接口功能。但可以通过一些技巧实现类似接口的功能,比如使用函数指针、结构体和回调函数等。
typedef void (*InterfaceFunc)();
InterfaceFunc interface;
void Func1() {
printf("Func1\n");
}
void Func2() {
printf("Func2\n");
}
int main() {
interface = Func1;
interface(); // 调用Func1
interface = Func2;
interface(); // 调用Func2
return 0;
}
typedef struct {
void (*interfaceFunc)();
} Interface;
void Func1() {
printf("Func1\n");
}
void Func2() {
printf("Func2\n");
}
int main() {
Interface interface1;
interface1.interfaceFunc = Func1;
interface1.interfaceFunc(); // 调用Func1
Interface interface2;
interface2.interfaceFunc = Func2;
interface2.interfaceFunc(); // 调用Func2
return 0;
}
这样就可以通过函数指针或结构体和回调函数的方式来实现接口的功能了。