| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1865 人关注过本帖, 1 人收藏
标题:求助:不能将参数 1 从“int *”转换为“int (__cdecl *)(void)
只看楼主 加入收藏
phqxjwyf
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-2-21
收藏(1)
 问题点数:0 回复次数:3 
求助:不能将参数 1 从“int *”转换为“int (__cdecl *)(void)
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <malloc.h>
#include <assert.h>
#include <stdlib.h>

int enter(void),delete1(void),review(void),quit(void),menu(void);
int process(int ( *fun)(void));
int *options[4]=
{
    (int *)enter,
    (int *)delete1,
    (int *)review,
    (int *)quit
};
int main(void)
{
    int i;
    i=menu();

    process(options[i]);//options[i])与函数名的值相同,可编译是却告知“不能将参数 1 从“int *”转换为“int (__cdecl *)(void)”
//    printf("%p\n",enter);
    return 0;
}

int menu(void)
{
    char ch;
    do
    {
        printf("1.enter\n");
        printf("2.delete\n");
        printf("3.review\n");
        printf("4.quit\n");
        printf("select a number:");
        ch=getche();
        printf("\n");
    } while (!strchr("1234",ch));

    printf("%x\n",ch);


    return ch-49;//49相当于16进制的31h.返回0,代表options[0]
}

int process(int ( *fun)(void))
{
    (*fun)();
    return 0;
}

int enter()
{
    return 1;
}
int delete1()
{
    return 1;
}
int review()
{
    return 1;
}
int quit()
{
    return 1;
}


请高手帮忙,我用的是VS2005编译器。
搜索更多相关主题的帖子: include process 
2011-05-06 12:08
misswe
Rank: 2
等 级:论坛游民
帖 子:17
专家分:15
注 册:2011-4-30
收藏
得分:0 
解释类型不同 肯定是转不了的!
2011-05-06 21:05
forever74
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:CC
等 级:版主
威 望:58
帖 子:1687
专家分:4253
注 册:2007-12-27
收藏
得分:0 
int (*options[4])(void)=
 {
     enter,
     delete1,
     review,
     quit
 };

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2011-05-06 22:50
phqxjwyf
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-2-21
收藏
得分:0 
多谢forever74!!!!豁然开朗!!

[ 本帖最后由 phqxjwyf 于 2011-5-7 11:11 编辑 ]
2011-05-07 11:06
快速回复:求助:不能将参数 1 从“int *”转换为“int (__cdecl *)(void)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020718 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved