static NSInteger num3 = 300;
NSInteger num4 = 3000;
- (void)blockTest
{
NSInteger num = 3;
static NSInteger num2 = 30;
__block NSInteger num5 = 30000;
NSMutableArray * arr = [NSMutableArray arrayWithObjects:@"1",@"2", nil];
void(^block)(void) = ^{
NSLog(@"%zd",num);
NSLog(@"%zd",num2);
NSLog(@"%zd",num3);
NSLog(@"%zd",num4);
NSLog(@"%zd",num5);
NSLog(@"%@",arr);
[arr addObject:@"4"];
};
num = 1;
num2 = 10;
num3 = 100;
num4 = 1000;
num5 = 10000;
[arr addObject:@"3"];
arr = nil;
block();
}
打印结果:
2021-04-10 22:19:31.919651+0800 BlockTest[6263:26179341] 3
2021-04-10 22:19:31.922387+0800 BlockTest[6263:26179341] 10
2021-04-10 22:19:31.922726+0800 BlockTest[6263:26179341] 100
2021-04-10 22:19:31.922795+0800 BlockTest[6263:26179341] 1000
2021-04-10 22:19:31.923339+0800 BlockTest[6263:26179341] 10000
2021-04-10 22:19:31.923814+0800 BlockTest[6263:26179341] (
1,
2,
3
)