通过宏将变量声明为内联函数

Variable declaration via macro into inline function

我有一个快速的问题。我使用这个宏来创建新数组:

#define NEW_ARRAY(id,size) int id[size]={0,}

我可以制作一个做同样事情的内联函数吗? (没有 malloc,我需要在不更改源代码的情况下通过条件编译在宏和内联之间交换)

我想这是不可能的,但是我想问你,以防万一有一个选择。

没有。你不能。对于内联函数,您需要在堆上分配内存,然后 return 指向该分配内存的指针。