一、例如,我现在声明1个无参数、无返回值的block变量 main.m文件中 #import <Foundation/Foundation.h> typedef void (^NewType)(); int main() { NewType block1 = ^void(){ NSLog(@"啦啦啦,我是卖报的小行家。); }; return 0; } 我在main函数前面声明1个全局变量: int num = 100;//全局变量 之后,我们基本上就不再用全局变量了,因为全局变量是C语言特有的东西,在Objective-C语言中,我们可以用static来代替,后面我们也会讲单例,可以用单例来代替 我在main函数里面再声明1个num变量,这是1个局部变量 int num = 200;//局部变量 我在block块里面再声明1个num变量,这是1个定义在block块里面的局部变啦 int num = 300;//局部变量 我在main函数的最后,执行一下block1(); 代码就变成这样了: #import <Foundation/Foundation.h> int num = 100;//全局变量 typedef void (^NewType)(); <