block块语法和c中的函数指针类似。
函数的定义是一样的,但是,函数名就换成了(*p)
回顾一下 c的函数指针用法
//函数的指针精髓在?回调
//int(*ps)(int,int) = sum;
//NSLog(@"%d",ps(3,6));
在此处创建了一个函数指针
1:block的创建
</pre> <pre name="code" class="objc">// int (^blo)(int a,int b) = ^(int a,int b)
// {
// return a+ b;
// };
在等号右边的 ^ 后面可以数据类型,即返回类型,但是在oc中这块系统会识别返回的数据类型。当然如果不返回数据,就不考虑返回值了。
2:调用
上面的block调用的时候,和函数指针调用类似。
int nums = blo(1,2);
NSLog(@"%d",nums);
调用完之后,打印一下数据。即可得到对应的数据。