In *_*ico 10
不,C不支持lambda表达式.
如果你愿意使用C++,Boost有一个模拟lambdas的库.此外,C++ 0x将内置支持lambda表达式.
当时C语言中没有对lambda表达式支持的巨大需求,因此该语言不支持它.
C不支持lambda表达式,也不支持动态创建函数的任何其他方式(在语言标准内) - 根据标准,所有函数都是在编译时创建的.我想原因是保持语言小巧,简单,精简和快速,几乎不需要任何"运行时库"支持 - 这对于在编程操作系统,设备驱动程序,嵌入式应用程序和编程中广泛使用的语言至关重要等等.