zoukankan      html  css  js  c++  java
  • C/C++ 关于 for循环 的第二个表达式右侧非常量的时候

    废话不多说,直接看代码:

    #include<stdio.h>
    
    int main(){
        int i=5;
        for(int z=i,zmax=i+10;z<zmax;z++){
            printf("i=%d z=%d
    ",i,z);i++;
        }
        /* 无限循环了....
    
        
        for(int z=i;z<i+10;z++){
            printf("i=%d z=%d
    ",i,z);i++;
        }
        
        for(;i<i+10;i++){
            printf("i=%d
    ",i);
        }
        */
        return 0;
    }

    两个无限循环的for,都是 第二个表达式 XX < ZZ 右侧为非常量所引起。

    我本以为 编译器会优化,不过被一般的思维羁绊了,第二个表达式 也可能跟 前面的变量没有任何关系,所以不可能优化的么~

    既然是表达式,当时是动态的,在for循环内部更新了变量,这个表达式自然会发生变化。

  • 相关阅读:
    StackView
    横竖屏
    Html
    UILabel
    NSString
    NSPredicate|谓词
    iphone
    函数
    UIBezierPath
    UICollectionView
  • 原文地址:https://www.cnblogs.com/ayanmw/p/3666102.html
Copyright © 2011-2022 走看看