为了账号安全,请及时绑定邮箱和手机立即绑定

可不可以详细解释下,初始化那个如果拆分来看不就是在外面的吗???

可不可以详细解释下,初始化那个如果拆分来看不就是在外面的吗???

C
交互式爱情 2023-04-20 19:15:21
#include "stdio.h"int main(void){int a=100,b=100;for(int n=1;a>=b;n++)//我把它放在这里就通不过,提示未定义。但是我把它拿出来,放在上面一行,就可以,这是为什么。还有我用的是codeblocks还有我这个//的用法对不对?{b=(100*1.05)*n;a=100+100*0.1*n;}printf("The cost is a is %d and b is %d and n is %d",a,b,n);return 0;}
查看完整描述

2 回答

?
SMILET

TA贡献1796条经验 获得超4个赞

这是变量的作用域问题
如果你把变量n定义在for里,那它的作用域就在for块了,for{}循环外面是不能使用这个变量的。
你在for循环结束后,想输出n,这是错误的,会提示你n没有定义。
所以你应该把n的定义放在for外部,这样,整个main函数都可以使用了

查看完整回答
反对 回复 2023-04-23
?
慕沐林林

TA贡献2016条经验 获得超9个赞

这个是编译器的问题有些编译器支持在for里面定义变量然后在for循环里面使用,
但有些编译器不支持//只能注释一行多行的话用/* ........*/注释更多的部分可以用#if 0.....#endif

查看完整回答
反对 回复 2023-04-23
  • 2 回答
  • 0 关注
  • 146 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信