block的原理是一道分水岭,区分中高级程序的试金石,一般的大公司,他可能不会问你内存管理,甚至多线程编程问题也简单的一笔带过,但是block一定会仔细问。可惜的是平时只知使用,对其原理与实质没有深究,因此数次面试倒在这道坎上,真是心有不甘,这次好好理理关于block的前因后果,以供后续随手翻阅查证。
block的定义:带有自动变量(局部变量)的匿名函数
想要说明什么是匿名函数,先来了解下什么是函数以及函数指针
- 函数:函数是C语言程序中的重要组成部分,不同函数调用的组合实现程序的各个功能。
格式如下:
returnType funcName(paramter List){
//funcBody
}
returnType:函数返回值
funcName:函数名
paramter List:参数列表
funcBody:函数体
一个简单的函数如下:
int funcSum (