读书人

本人很弱,一道函数指针改错题目

发布时间: 2012-02-09 18:22:27 作者: rapoo

本人很弱,求助一道函数指针改错题目!
指出下面程序中的错误并使之正确运行,并输出t1,t2,t3,t4的值.
#include <stdio.h>
f1(int *k)
{
return *k=*k**k;
}
f2(int *k)
{
return *k=*k*2;
}
int main()
{

int k=3,t1,t2,t3,t4;
int *f;
f=f1;
t1=(*f)(&(k));
t2=f2(&k);
t3=f1(&k);
f=f2;
t4=f(&k);
printf( "%d,%d,%d,%d ",t1,t2,t3,t4);
return 0;
}

[解决办法]
int (*f)(int *);//声明为函数指针
应改为
typedef int (*f)(int *);//声明为函数指针


答案:9 18 324 648

读书人网 >C语言

热点推荐