【问题标题】:What is a 'for' loop initial declaration and why can I not use it?什么是“for”循环初始声明,为什么我不能使用它?
【发布时间】:2022-01-19 18:07:12
【问题描述】:

void display()
{
    if(front==-1)
    {
        printf("\n QUEUE IS UNDERFLOW");
    }
    else
    {
        for(int i=front;i<=rear;i++)
        {
            printf("\n %d",queue[i]);
        }
    }
}

C程序中队列的数组实现发生错误

错误区域:void display()

错误: [错误] 'for' 循环初始声明只允许在 C99 或 C11 模式下使用

【问题讨论】:

  • 你有什么问题?
  • @jaswanth 打开 C99 或 C11 的选项,或者使用更现代的编译器。
  • 您收到错误是因为您使用的是旧版本的 C 标准。你用的是什么编译器?你是如何构建你的应用程序的?
  • 它向我显示了这样的错误 [Error] 'for' 循环初始声明只允许在 C99 或 C11 模式下使用
  • 在不相关的注释中,请养成在输出中使用 trailing 换行符的习惯。当您的程序从终端运行时,前导换行符将打印 previous 行。尾随换行符将打印当前行。

标签: c data-structures queue


【解决方案1】:

您使用的是过时的 C 编译器(可能是 Turbo C?),它不允许“for”循环初始声明:

改变这个:

for (int i = front; i <= rear; i++)

到这里:

int i;
for (i = front; i <= rear; i++)

或者(更好)获得更现代的 C 编译器。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2017-06-22
  • 1970-01-01
  • 1970-01-01
  • 2016-09-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-06
相关资源
最近更新 更多