gpt4 book ai didi

c - C语言中的for循环错误

转载 作者:行者123 更新时间:2023-11-30 18:43:24 26 4
gpt4 key购买 nike

编码 IDE:Microsoft Visual C++ 6.0

以下代码:

#include <stdio.h>
#include <string.h>
int main()
{
int i;
for(i=0; i<7; i++)
{
int j;
for(j=0; j<5; j++)
{
if(i==0 || i==6)
{
// print *****
if(j<4)
{
printf("*");
}
else if(j==4)
{
printf("*\n");
}
}
else
{
if(j==0)
printf("*");
else if(j==4)
{
printf("*\n");
}
}
}
}

return 0;
}

产生此错误消息:

error C2143: syntax error : missing ';' before 'type'

error C2065: 'i' : undeclared identifier

我只是不知道为什么它给我这种错误消息。它应该是一个简单的 for 循环 - for (int i=0; i<10; i++){}但它不起作用并给了我这种错误消息。

最佳答案

您的编译器可能遵循旧版本的 C 标准 ISO 9899:1990,通常称为“C90”(有时称为“C89”或“ANSI-C”)。

C90 标准不允许在 for 循环内声明变量。所有变量声明必须在当前语句的顶部完成,紧接在 { 之后。

此外,C90 标准不允许 // 注释,这可能是编译器错误的根源。

当前的 C 标准 ISO 9899:2011(“C11”)允许在任何地方声明变量以及 // 注释。

关于c - C语言中的for循环错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9160788/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com