对循环中的作用域有疑问

Doubt on scope in loops

本文关键字:作用域 有疑问 循环      更新时间:2023-10-16

我有一个关于循环的问题要问。

r=1000000.0;
for (i=0;i<laser_count;i++)
{
 if(this->laser_ranges[i][0] !=-1)
  {
   r= this->laser_ranges[i][0];
  }
 else
 {
   this->laser_ranges[i][0]=r;
 }
}

我的问题是,如果laser_ranges[i][0] = -1,那么它总是等于1000000.0。我这么说对吗?或者r是否会随着循环迭代而变化?

如果this->laser_ranges[i][0] != -1满足条件,则

r将发生相应的变化。r的值取决于索引[i][0]的值

如果typeof rlaser_ranges[][]是相同的,那么-->是的,你是正确的说这个只有第一次 (编辑:这是一个非常特殊的情况)。通常r 可能会根据laser_ranges[i][0]的值而改变