C语言结构体中如何包含函数


 

#include <stdio.h>
#include <malloc.h>

struct Hello{
    void (*sayHello)(char* name);
};

void sayHello(char* name){
    printf("hello, %s\n",name);
}

int main(){
    struct Hello* hello=(struct Hello *)malloc(sizeof(struct Hello));
    hello->sayHello=sayHello;//这个结构体有多少个函数,就要在这个有多少个结构体内,函数指针指向函数的声明。
    hello->sayHello("a");
    free(hello);

    return 0;
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM