问题描述
解决方案
因为,变量声明必须在函数或块的顶部,在执行了print后,c语言就不许可声明变量了
解决方案二:
看下你的错误信息,按理说放外面放里面都可以。
解决方案三:
while条件中不能定义变量 java书写规范问题,for、while、do while{}后面不能直接定义变量或生成对象(在没有大括号的情况下)
(C++Primer)for循环中定义的变量i的可见性
java书写规范问题,for、while、do while{}后面不能直接定义变量或生成对象(在没有大括号的情况下)
解决方案四:
里面外面都可以的,你把错误信息也发出来
解决方案五:
都是可以的,并且你把结构体定义放到for里面,那么a的作用于就只能是for语句块了,这样程序跳出循环之后a就没有了。
解决方案六:
因为你写的是C,C新标准推行的比较慢
一般声明,必须写在语句组的开头
解决方案七:
不应该啊,应该里面外面都可以的
解决方案八:
我测试了下,都可以编译
#include <stdio.h>
struct player
{
int num;
};
int main()
{
int s = 0;
printf("*");
struct player a[20];
for (s = 0; s < 2; s++)
{
scanf("%d", &s);
switch (s)
{
case 0: a[0].num = 3; break;
case 1: a[1].num = 3; break;
default: break;
}
}
return 0;
}
#include <stdio.h>
struct player
{
int num;
};
int main()
{
int s = 0;
printf("*");
for (s = 0; s < 2; s++)
{
struct player a[20];
scanf("%d", &s);
switch (s)
{
case 0: a[0].num = 3; break;
case 1: a[1].num = 3; break;
default: break;
}
}
return 0;
}
时间: 2024-08-29 12:13:45