当前位置: 代码迷 >> 综合 >> error: ‘for’ loop initial declarations are only allowed in C99 mode
  详细解决方案

error: ‘for’ loop initial declarations are only allowed in C99 mode

热度:87   发布时间:2023-12-26 21:40:55.0

报错如下
在这里插入图片描述
比如写出下面这段程序:

for (int i = 0; i < n; ++i)
{
    do_something();
}

然后用gcc编译,会报 ‘for’ loop initial declarations are only allowed in C99 mode的错误。

原因是在循环条件中声明变量,只在C99标准中支持,C90标准不支持。

所以改成:

int i;
for (i = 0; i < n; ++i)
{
    do_something();
}

这样编译就可以通过了。

  相关解决方案