函数的库有时在注册时需要两个参数：一个函数指针，一个独立的codice_16指针用以保存用户数据。这样的做法允许回调函数恢复其调用时的状态。这样的惯用法在功能上类似于闭包，但语法上有所不同。
gcc对C语言的扩展.gcc编译器对C语言实现了一种闭包的程序特性。
C语言扩展：Blocks.C语言 (使用LLVM编译器或苹果修改版的GCC)支持块。闭包变量用__block标记。同时，这个扩展也可以应用到Objective-C与C++中。typedef int (