版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/LoveJiaYu/article/details/85343548
Demo1:
#include<stdio.h>
#include<malloc.h>
struct Hello {
void (*p)(char* name);
};
void sayHello(char* name) {
printf("你好,%s!\n", name);
}
int main() {
struct Hello* h = (struct Hello*) malloc(sizeof(struct Hello));
h->p = sayHello;
h->p("鲍勃");
return 0;
}
Demo2:
#include<stdio.h>
#include<malloc.h>
typedef struct Hello {
void (*p)(char* name);
}Hello;
void sayHello(char* name) {
printf("你好,%s!\n", name);
}
int main() {
Hello h = {sayHello};
h.p = sayHello;
h.p("鲍勃");
return 0;
}
两个实例结果相同: