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

时间:2015-03-15 13:22:05

标签: c inline declaration c-preprocessor

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

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

我可以创建一个同样的内联函数吗? (没有malloc,我需要在不改变源代码的情况下使用条件编译在宏和内联之间进行交换)

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

1 个答案:

答案 0 :(得分:2)

没有。你不能。在内联函数的情况下,您需要在堆上分配内存,然后返回指向该分配内存的指针。