繁体   English   中英

在执行'main'之外的空格后如何回到'main'的顶部

[英]How to get back to the top of 'main' after executing a void outside 'main'

完全执行函数后如何才能回到main函数的顶部?

示例代码:

#include <stdio.h>

void function();

int main(int argc, char const *argv[]) {
  // GET BACK TO HERE AFTER EXECUTING "FUNCTION();"
  printf("Something here\n");
  printf("Something here\n");
  printf("Something here\n");
  printf("Something here\n");
  printf("Something here\n");
  function();
}

function(){

}

使用while循环:

#include <stdio.h>
int main() {
  bool keep_going = true;
  while (keep_going) {
    // Your main() code here.
    function();
    // Don't forget to set keep_going to false at some point so the program terminated.
  }
  return 0;
}

上面的构造是一个while循环。 它继续执行循环体(在大括号之间),直到循环开始的条件为假。

不要使用转到。 Goto虽然有效,但通常被认为是像宏一样的“邪恶”结构,因为它们使得跟踪程序流程变得更加困难,并且通常会导致意大利面条代码。 while循环在这里工作得很好,被认为是很好的编程风格。

要清楚, goto (如宏)存在,因为它在某些情况下很有用。 但是这些情况并不经常发生,并且通过将它们标记为“邪恶”,人们理解如果存在更好的替代方案(如循环),则应该避免使用该特征。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM