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

标签 c inline declaration c-preprocessor

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

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

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

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

最佳答案

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

关于c - 通过宏将变量声明为内联函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29061067/

相关文章:

c++ - 琐碎的任务

Javascript 变量声明和谷歌地图

c - C程序在gcc编译器中跳过了该程序中的循环。

c - Orwell 的 MinGW 和 TDM Dev-C++ 版本有什么区别?

html - 为什么我要创建的这些列之间有间距?

django - 使用内联表单中的额外字段 - save_model、save_formset,无法理解差异

无法编译 GL ES 2.0 着色器

使用带结构的 C 创建地址簿

将 C 程序转换为内联汇编?

c - 是否所有的 C 函数都需要在头文件中声明