C++ 基于编译时参数在C中重复代码
假设我有一个C代码,比如说,C++ 基于编译时参数在C中重复代码,c++,c,C++,C,假设我有一个C代码,比如说,printf(“a”)如何根据某个编译时参数重复N次,其中N在该编译器参数中传递。e、 ggcc-D打印=N 类似地,是否有一种方法可以根据编译时参数/标志传递循环的范围?只需将其放入循环中: for (int i = 0; i < print; ++i) printf("A"); for(int i=0;i你能澄清吗?第二个是容易的(int i=0;i 代码>第一个可以用C++完成,但不一定要C。请参阅C和C++是不同的语言,并且需要
printf(“a”)代码>如何根据某个编译时参数重复N次,其中N在该编译器参数中传递。e、 ggcc-D打印=N
类似地,是否有一种方法可以根据编译时参数/标志传递循环的范围?只需将其放入循环中:
for (int i = 0; i < print; ++i)
printf("A");
for(int i=0;i
print
符号将被编译器命令行上指定的值替换(例如-Dprint=5
),因此循环将运行所需的次数。通过添加另一个-D
定义以使用不同的范围,可以对起始值0
执行相同的操作
然而,print
并不是这样一个宏的好名字;惯例是在所有大写字母中使用较长的名称,以避免与函数名等发生冲突
如何根据某个编译时参数重复N次,其中N在该编译器参数中传递
只需生成一个C文件,也许使用另一个脚本(或者,您可以编写,C++或甚至C)来生成它。相应地配置您的工具(例如或)
请记住,您可以包含生成的文件
有关(C文件生成器)的示例,请参见或
另见(摘自已故雅克·皮特拉特)
>你也可以对.< /p>你能澄清吗?第二个是容易的<代码>(int i=0;i <打印;+i)…< />代码>第一个可以用C++完成,但不一定要C。请参阅C和C++是不同的语言,并且需要对这个问题有不同的答案。