通过分支语句和普通循环编写循环之间的区别是什么

use*_*871 2 c++ loops

例如,通过分支跳转语句和正常循环来编写循环之间的区别是什么

        main()
        {
        int i=0;
        while(i<9)
        {
          //do something
           i++;
        }
Run Code Online (Sandbox Code Playgroud)

        main()
        {
            int i=0;
            label:
             //do something
              i++;
             if(i<9)
              goto label;
         }
Run Code Online (Sandbox Code Playgroud)

两者的表现是否相等?

das*_*ght 10

这两个循环不等价:第二个循环类似于do/ while循环,而不是while循环:

main() {
    int i=0;
    do {
      //do something
       i++;
    } while(i<9);
}
Run Code Online (Sandbox Code Playgroud)

表演的两者应该是一样的; 但是,解决方案的可读性goto 受到很大影响,因此我不会在任何项目中使用它.