不能将 "int (*)(int a, int b)" 类型的值分配到 "int (*)()" 类型的实体和函数调用中的参数太多

原问题:不能将 "int (*)(int a, int b)" 类型的值分配到 "int (*)()" 类型的实体和函数调用中的参数太多
分类:编程开发 > 最后更新时间:【2016-12-21 22:08:47】
问题补充:

#include "stdafx.h"

int min(int a,int b)

{if (a < b)return a;

else return b;}

void main()

{int(*pmin)( );

int a, b, m;

pmin = min;

printf("Please input two integer numbers:\n");

scanf_s("%d%d", &a, &b);

m = (*pmin)(a, b);

printf("min = %d", m);

getchar();

}

void函数的第3行和第6行是错误的实在是想不出怎么解决问题

最佳答案

你的定义不对

int(*pmin)( );

应该是

int(*pmin)(int x,int y);

否则与你的min函数定义不匹配.

另外,这么简单的函数调用不用指向函数的指针的(除非就是一个针对它的测试)

最佳答案由网友  whoami1978  提供
公告: 为响应国家净网行动,部分内容已经删除,感谢网友理解。
1

分享到:

其他回答

暂无其它回答!

    推荐