如何使用break语句停止内部和外部循环[重复]

2024-05-28

我使用的代码非常简单break内部循环:

for (int it=0; it<5; it++) {
    for (int it2=0; it2<5; it2++) {
        if (it2==2) 
            break; //break here not it2, but it loop
        NSLog(@"it=%d it2=%d", it, it2);
    }
}

我收到一个输出:

it=0 it2=0, it=0 it2=1, 
it=1 it2=0, it=1 it2=1, 
it=2 it2=0, it=2 it2=1,
it=3 it2=0, it=3 it2=1,
it=4 it2=0, it=4 it2=1

我知道在某些编程语言中可以确定哪个循环中断语句应该影响。可以打电话吗break停止外循环(for with it多变的)?


如果你真的想这样做,那就硬着头皮使用goto.

for (int it=0; it<5; it++) {
    for (int it2=0; it2<5; it2++) {
        if (it2==2) 
            goto end_outer_loop;
        NSLog(@"it=%d it2=%d", it, it2);
    }
}

end_outer_loop:

// more stuff here.

这是合法的goto(大多数 goto 中downward方向是)。实际上break是一种特殊的“认可”goto,并且因为 C 是一种最小语言,所以在复杂情况下必须使用显式 goto。

However正如这里很多人指出的那样,如果你能使用的话那就更好了return.你不应该扭曲你的程序只是为了避免转到,但在大多数情况下,这表明您的函数变得过于复杂,因此应该分解。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用break语句停止内部和外部循环[重复] 的相关文章

  • 推导指南中的引用和值之间的差异

    考虑类型A template
  • 如何将 #ifdef DEBUG 添加到 Xcode?

    我的项目中有一些代码永远不应该在发布版本中使用 但在测试时很有用 我想做这样的事情 ifdef DEBUG Run my debugging only code endif 在 Xcode 4 中哪里添加 DEBUG 设置 我尝试将其放入
  • 读取文件特定行号的有效方法。 (奖励:Python 手册印刷错误)

    我有一个 100 GB 的文本文件 它是来自数据库的 BCP 转储 当我尝试导入它时BULK INSERT 我在第 219506324 行上收到一个神秘错误 在解决此问题之前 我想看看这一行 但可惜的是我最喜欢的方法 import line
  • 如何从 .resx 文件条目获取注释

    资源文件中的字符串有名称 值和注释 The ResXResourceReader类让我可以访问名称和值 有办法看评论吗 你应该能够得到Comment via ResXDataNode class http msdn microsoft co
  • C# Dns.GetHostEntry 不返回连接到 WiFi 的移动设备的名称

    我有一个 C 中的 Windows 窗体应用程序 我试图获取列表中所有客户端的主机名 下面给出的是 ra00l 来自此链接的代码示例 GetHostEntry 非常慢 https stackoverflow com questions 99
  • 如何在 C# 中定义文本框数组?

    您好 当我在 Windows 申请表上创建文本框时 我无法将其命名为 box 0 box 1 等 我这样做的目的是因为我想循环使用它们 其实我发现TextBox array firstTextBox secondTextBox 也有效
  • 获取 WPF 控件的所有附加事件处理程序

    我正在开发一个应用程序 在其中动态分配按钮的事件 现在的问题是 我希望获取按钮单击事件的所有事件 因为我希望删除以前的处理程序 我尝试将事件处理程序设置为 null 如下所示 Button Click null 但是我收到了一个无法分配 n
  • 使用 JNI 从 Java 代码中检索 String 值的内存泄漏

    我使用 GetStringUTFChars 从使用 JNI 的 java 代码中检索字符串的值 并使用 ReleaseStringUTFChars 释放该字符串 当代码在 JRE 1 4 上运行时 不会出现内存泄漏 但如果相同的代码在 JR
  • 未经许可更改内存值

    我有一个二维数组 当我第一次打印数组的数据时 日期打印正确 但其他时候 array last i 的数据从 i 0 到 last 1 显然是一个逻辑错误 但我不明白原因 因为我复制并粘贴了 for 语句 那么 C 更改数据吗 I use g
  • iOS:addConstraints:应用程序崩溃

    Problem 我似乎无法在现有项目中采用自动布局 Details 我之前也遇到过与此问题相同的问题presentViewController 在 iOS 但所提供的答案都不是我的解决方案 我正在使用所有没有 xib 的故事板视图 我的 使
  • 如何使用 watin 中的 FileUploadDialogHandler 访问文件上传对话框

    我正在使用 IE8 和 watin 并尝试通过我的网页测试上传文件 我不能简单地使用 set 方法设置上传文件 例如 ie FileUpload Find ById someId Set C Desktop image jpg 因为上传文本
  • Visual Studio 中的测试单独成功,但一组失败

    当我在 Visual Studio 中单独运行测试时 它们都顺利通过 然而 当我同时运行所有这些时 有些通过 有些失败 我尝试在每个测试方法之间暂停 1 秒 但没有成功 有任何想法吗 在此先感谢您的帮助 你们可能有一些共享数据 检查正在使用
  • 上下文敏感与歧义

    我对上下文敏感性和歧义如何相互影响感到困惑 我认为正确的是 歧义 歧义语法会导致使用左推导或右推导构建多个解析树 所有可能的语法都是二义性的语言是二义性语言 例如 C 是一种不明确的语言 因为 x y 总是可以表示两个不同的事物 如下所述
  • 如何将自定义 JSON 文件添加到 IConfiguration 中?

    我正在使用 asp net Autofac 我正在尝试加载自定义 JSON 配置文件 并基于该文件创建 实例化 IConfiguration 实例 或者至少将我的文件包含到默认情况下构建的 IConfiguration asp net 中
  • 使用 Moq 使用内部构造函数模拟类型

    我正在尝试模拟 Microsoft Sync Framework 中的一个类 它只有一个内部构造函数 当我尝试以下操作时 var fullEnumerationContextMock new Mock
  • 如何对 Web Api 操作进行后调用?

    我创建了一个 Web API 操作 如下所示 HttpPost public void Load string siteName string providerName UserDetails userDetails implementat
  • 如何在按钮单击时模拟按键 - Unity

    我对 Unity 中的脚本编写非常陌生 我正在尝试创建一个按钮 一旦单击它就需要模拟按下 F 键 要拾取一个项目 这是我当前的代码 在编写此代码之前我浏览了所有统一论坛 但找不到任何有效的东西 Code using System Colle
  • 有没有办法强制显示工具提示?

    我有一个验证字段的方法 如果无法验证 该字段将被清除并标记为红色 我还希望在框上方弹出一个工具提示 并向用户显示该值无效的消息 有没有办法做到这一点 并且可以控制工具提示显示的时间 我怎样才能让它自己弹出而不是鼠标悬停时弹出 If the
  • 线程和 fork()。我该如何处理呢? [复制]

    这个问题在这里已经有答案了 可能的重复 多线程程序中的fork https stackoverflow com questions 1235516 fork in multi threaded program 如果我有一个使用 fork 的
  • 如何将 Roslyn 语义模型返回的类型符号名称与 Mono.Cecil 返回的类型符号名称相匹配?

    我有以下代码 var paramDeclType m semanticModel GetTypeInfo paramDecl Type Type Where paramDeclType ToString returns System Col

随机推荐

  • AngularJS 中的重定向状态

    这是状态配置 angular module grabhutApp config function stateProvider urlRouterProvider stateProvider ACCOUNT state account abs
  • 如何为字符串生成 GUID?

    我在为字符串生成 GUID 时遇到问题 例如 Guid g New Guid Mehar 如何计算 GUID Mehar 我遇到了例外 这个线程很旧 但这就是我们解决这个问题的方法 由于 NET 框架中的 Guid 是任意 16 字节或 1
  • 在哪里以及如何安装 twitter 的 Python API?

    我访问了 Twitter 的 API 它把我重定向到了谷歌代码 但网站不在那里 有其他替代的 Twitter API 以及教程吗 谢谢 尝试推推 http code google com p tweepy http code google
  • 如何在大空间尺度上加速A*算法?

    From http ccl northwestern edu netlogo models community Astardemo http ccl northwestern edu netlogo models community Ast
  • 获取一条线与地平线的角度

    我想知道如何获得线 A B 与水平轴 X 的角度 SO 中的其他问题仅在两条线之间进行此操作 我知道我总是可以绘制第二条线 A C 并计算 但我想知道是否有更快的方法 编辑 我非常确定我没有进行过早的优化 您可以使用atan为了那个原因 a
  • 关闭 iPhone 网络应用程序

    我想关闭或最小化 隐藏 全屏 iPhone Web 应用程序 这个怎么做 window close 不起作用 你不能 您无法从 JavaScript 中退出浏览器 但你可以尝试让浏览器崩溃 但这并不是一个好主意
  • LaTeX 仅打印文档的前两页

    我正在 LaTeX 中工作 当我创建 pdf 文件 使用 LaTeX 按钮或 pdfLaTeX 按钮或使用 yap 时 pdf 仅包含前两页 没有错误 它就停止了 如果我通过添加文本使第一页更长 它仍然会停在第二页末尾 有任何想法吗 好的
  • WooCommerce:检查商品是否已在购物车中

    我从中发现了这个很棒的片段website https joebuckle me quickie woocommerce check if item already in cart 以下是检查购物车中是否存在特定产品的函数 function
  • 未分配给变量的类实例是否会过早被垃圾回收?

    我什至不知道我的问题是否有意义 这只是我不明白的事情 并且在我的脑海中旋转了一段时间 考虑有以下课程 public class MyClass private int myVar public void DoSomething Do som
  • IE:“nodeType”为 null 或不是对象

    我在 IE 6 7 8 中的网站上遇到此问题 nodeType 为 null 或不是对象 该错误涉及 f nodeType 属性 基本上 f 是未定义的 所以问题是之前的 但我无法修复它 从 IE 开发人员工具栏调试来看 似乎是这一行引发了
  • Visual Studio 2008 在构建解决方案时跳过项目

    我最近在Win2k8R2机器上安装了VS2008并打开了一个VS2005项目 C 成功转换到 VS2008 后 我尝试在调试 x64 模式下构建项目 但该项目正在被跳过 我尝试了 清理 和 重建 但这些也被跳过 我能够在调试 win32 模
  • Python 中 a -= b 和 a = a - b 之间的区别

    我最近申请了this https stackoverflow com questions 30379311 fast way to take average of every n rows in a npy array对矩阵的每 N 行进行
  • 广告拦截。添加 css 类或从元素中删除属性

    是否可以通过adblock向某个页面的元素添加css规则 像这样的东西 myElement color white important 我试图找到一个在页面加载时更新此元素样式的脚本 但似乎这不是最好的方法 可以在 uBlock Origi
  • PHP 5.4 PDO 无法使用旧的不安全身份验证连接到 MySQL 4.1+

    我知道有很多类似的问题 事实上我已经阅读了所有 9 个问题 但是 他们都没有解决我的问题 我有一个共享托管包 最低限度 我的包中包含域名和托管 MySQL 服务器的单独 IP 地址 为了开发 我正在使用http localhost 与 PH
  • 方法“Boolean Contains(System.String)”不支持对 SQL 的转换

    方法 Boolean Contains System String 不支持对 SQL 的转换 查询是 IsQueryable 但这停止工作 foreach string s in collection1 if s Length gt 0 q
  • 如何将 gnatmake/gnatbind/gnatlink 集成到 C/Ada 代码的 CMake 文件中?

    我用几种语言 C C Fortran77 Fortran90 编写了代码 并且可以使用 CMake 编译它 没有任何问题 效果很完美 现在 我想在用 C 编写的 main 中添加一些 Ada 函数 并且我想通过 CMake 编译它 鉴于我无
  • 查找数组中 2 个缺失数字的最快方法

    这个问题的存在只是出于纯粹的好奇心 不是作业 找到在数组 1 n 中找到两个缺失数字的最快方法 因此 在相关帖子中 查找数字数组中缺失数字的最快方法 https stackoverflow com questions 2113795 qui
  • htaccess“命令”拒绝、允许、拒绝

    我只想允许一个国家 地区访问 但排除该国家 地区内的代理 这就是我所拥有的 为了方便起见缩短版本
  • 如何在Python中使用selenium“向下滚动”某些部分?

    希望你很好 我正在尝试制作一个简单的脚本 但我卡在那里 我试图滚动列表以获取更多内容 但我无法向下滚动 任何人都知道这是如何完成的 这是我的代码 import selenium from selenium import webdriver
  • 如何使用break语句停止内部和外部循环[重复]

    这个问题在这里已经有答案了 我使用的代码非常简单break内部循环 for int it 0 it lt 5 it for int it2 0 it2 lt 5 it2 if it2 2 break break here not it2 b