(replies[r[i].type])(r[i]); 到底运行完返回的是什么呀?函数指针到底咋用?

来源:互联网 发布:东方航空网络值机 编辑:程序博客网 时间:2024/05/22 12:01
#include <stdio.h>#include <string.h>#include <stdlib.h>enum response_type{DUMP,SECOND_CHANCE,MARRIAGE};typedef struct {        char *name;        enum response_type type;}response;void dump(response r){        printf("Dear %s,\n",r.name);        puts("11111111111111111111");}void second_chance(response r){        printf("Dear %s,\n",r.name);        puts("222222222222222222");}void marriage(response r){        printf("Dear %s,\n",r.name);        puts("33333333333333333");}void(*replies[])(response)={dump,second_chance,marriage};int main(){        response r[]={                {"MIKE",DUMP},{"LUIS",SECOND_CHANCE},{"MATT",SECOND_CHANCE},{"WAII",MARRIAGE}        };        int i;        for(i=0;i<4;i++){                (replies[r[i].type])(r[i]);        }        return 0;}
(replies[r[i].type])(r[i]); 到底运行完返回的是什么呀?函数指针到底咋用?
0 0
原创粉丝点击