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;
}
這樣就可以通過函數指針或結構體和回調函數的方式來實現接口的功能了。