C语言宏的神奇写法:语句块作为参数,算半个函数式编程?

Posted yuanyb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言宏的神奇写法:语句块作为参数,算半个函数式编程?相关的知识,希望对你有一定的参考价值。

我想要写几个循环做测试代码,每次都写 `for(size_t i = 0; i < n; i++)` 很烦人,然后就灵机一动,能不能用宏实现,然后就写出了:

#define repeat(n, statements) for(size_t i = 0; i < n; i++)  statements 

然后竟然真的可以执行指定的语句(块),像发现了新大陆一样,哈哈,不知道这算不算半个伪函数式编程。测试:

repeat(10, 
    puts("hello world");
);

然后就会打印10行 hello world 了

 

以上是关于C语言宏的神奇写法:语句块作为参数,算半个函数式编程?的主要内容,如果未能解决你的问题,请参考以下文章

C语言:秀操作 | 函数宏的三种封装方式

区块链只能算半个“信任机器”,隐私计算才是真正的信任机器?

Python中return语句的参数都有哪些呢?

C语言中如何将二维字符数组作为函数参数引用传递

高分求助VC中关于不定参数宏的使用

在C语言程序中,func()是啥意思?