C++编程思想 第1卷 第3章 使用和滥用goto

goto是一个糟糕的编程方式
少数情况,goto能解决别的方法不能解决的问题

多层循环嵌套用break也不行,goto可以退出嵌套的循环


//: C03:gotoKeyword.cpp
// From Thinking in C++, 2nd Edition
// Available at http://www.BruceEckel.com
// (c) Bruce Eckel 2000
// Copyright notice in Copyright.txt
// The infamous goto is supported in C++
#include <iostream>
using namespace std;

int main() {
  long val = 0;
  for(int i = 1; i < 1000; i++) {
    for(int j = 1; j < 100; j += 10) {
      val = i * j;
      if(val > 47000)
        goto bottom; 
        // Break would only go to the outer 'for'
    }
  }
  bottom: // A label
  cout << val << endl;
  getchar();
} ///:~


输出
47047

猜你喜欢

转载自blog.csdn.net/eyetired/article/details/80575756