可不可以让函数当作形参在函数中传递呢,请问怎么实现呢,下面的程序怎样改呢??

#include "stdio.h"

void fun(void) {printf("hhhhhhhhhhhhhhhhhhhh");}

void P_fun(void(*p)()) {×p;}

main()
{
P_fun(fun);
}

第1个回答  2011-09-21
可以,改成这样就ok了,经过测试
#include <stdio.h>

void* fun(void)
{
printf("hhhhhhhhhhhhhhhhhhhh");
return NULL;
}

void P_fun(void* p)
{
p = fun();
}

void main()
{
P_fun(fun);
}追问

谢谢,不过你这种方法不能算吧
void P_fun(void* p)
{
p = fun();
}

第2个回答  2011-09-21
可以,只要函数的返回值与函数的参数类型一致就行了
第3个回答  2011-09-21
可以的
#include "stdio.h"
#include "stdlib.h"

void fun(void) {
printf("hhhhhhhhhhhhhhhhhhhh");
}

void P_fun(void(*p)(void)) {
p();
}

int main() {
P_fun(fun);
system("pause");
return 0;
}本回答被提问者采纳
相似回答