您的位置:首页 > 其它

080.Function Pointer Arg 函数指针作为函数参数

2015-07-19 01:26 162 查看
---------------
main.m
---------------
#import
<Foundation/Foundation.h>

void
map(int* data ,
int
len ,
int (*fn)())
{

for(int*
p = data ; p < data + len ; p++)
{

printf("%d,",
(*fn)(*p));
}

printf("\n");

}

int
noChange(int
val)

{

return val;
}
int
square(int
val) //
计算平方
{

return val * val;
}
int
cube(int
val)//
计算立方
{

return val * val * val;

}

int
main()

{

int
data[] = {20,
12,
8,
36,
24};

map(data ,
5
, noChange);

NSLog(@"计算数组元素平方");

map(data ,
5
, square);

NSLog(@"计算数组元素立方");

map(data ,
5
, cube);
}

一、编写本节代码的具体步骤:
1.参照003节的代码编写步骤。

二、本节代码涉及到的知识点:
1.map函数的第三个参数是一个指向函数的指针。
2.每次调用map函数时,可以动态传入一个函数,传入的函数不同,map函数也因此变得不同。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: