7

我想知道来自编译器的这条消息是否应该仔细考虑。

我们来看下面的代码:

struct s
{
  int a;
  int b[];
};

void fun(struct s c)
{
}

int main()
{
  return 0;
}

这给出了以下错误:

main.c:7:6: note: the ABI of passing struct with a flexible array member has changed in GCC 4.4

我的问题是:在更大的项目中使用这种结构安全吗?这种结构的可能风险和影响是什么(除了编译器消息)?

4

1 回答 1

-2
  1. 关于内存,每次我们调用这个函数时都会创建结构变量,所以浪费内存。
  2. 确认您的项目中是否需要 struct sc 或 struct s &c。
于 2013-04-09T10:50:57.067 回答