C/C++forループの2番目の式の右側に非常に量がある場合

1427 ワード

くだらないことは言わないで、コードを直接見ます.
#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; }

2つの無限ループのforは,いずれも2番目の式XXコンパイラが最適化すると思っていたのですが、一般的な思考に縛られて、2番目の表現も前の変数とは何の関係もない可能性があるので、最適化することはできませんか~
式である以上,当時は動的であり,forループ内部で変数が更新されると,この式は自然に変化する.