块是对c语言的一种扩展语法
块看起来像函数,不同的是,快可以直接写在函数内部
块能够作为参数传递给函数或者方法
void sayHello()
{NSLog(@"hello!");}
int main()
{
//定义一个block
int i=1;
void(^sayHello)(void)=^{
NSLog(@"%d",i) ; // 可以修改快外的东西,不可修改要修改 将i改成 __block i=1;在block 中就可以使用i
NSLog(@"hello,i am a block");
};
sayHello();
NSString *(^repeat)(NSString *, int )=^(NSString *str,int times){
NSMutableString *result=[NSMutableString string];
for(int i=0; i<times; i++)[result appendString:str];
return result;
};
NSString *string=repeat(@"hello",3);
return 0;
}