A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

为什么下面的写法是对的:
  1. int x=6;
  2. if (x>5)  
  3.    int y = x+1;
复制代码

而:
  1. for (int i = 0; i <= N; i++)  
  2.    int x = 5;
复制代码

这个是错的呢?

6 个回复

倒序浏览
自己顶一个咯
回复 使用道具 举报
N是一个常量就没问题,
回复 使用道具 举报
int x=6;
if (x>5)  
   int y = x+1;
通过int,已将x+1赋值给了y,y的存在是有定义的,有意义的.
--------------------------------------------------------------
for (int i = 0; i <= N; i++)  
   int x = 5;
N未做任何定义和赋值,压根不存在的东西,运行当然报错.
回复 使用道具 举报
n没赋值都能用?
回复 使用道具 举报
为学习顶一个
回复 使用道具 举报
你同事定义了变量X两次,下面int x=5直接赋值就好,x=5。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马