C++ 带循环的函数的返回值?

C++ 带循环的函数的返回值?,c++,function,loops,for-loop,C++,Function,Loops,For Loop,我有以下代码,但我对以下几点感到困惑: 为什么循环中的总和会返回?为什么外面的那个不行 还是程序返回将返回遇到的值并忽略其余值 #include <iostream> using namespace std; int m(int n) { int sum = 0; for(int i =1;i<=2;i++) { sum= sum + 10; return sum+3333; //returns inside loop } return s

我有以下代码,但我对以下几点感到困惑: 为什么循环中的总和会返回?为什么外面的那个不行

还是程序返回将返回遇到的值并忽略其余值

#include <iostream>
using namespace std;

int m(int n)
{
  int sum = 0;
  for(int i =1;i<=2;i++)
  {
    sum= sum + 10;
    return sum+3333; //returns inside loop
  }
  return sum-10;
}

int main()
{
  int n = 1;
  cout << m(n) << endl;
  return 0;
}

一旦编译器遇到return,它将返回main;因此,在这种情况下,一旦在循环中遇到它,它将返回main

Returns退出函数当遇到return关键字时,函数将返回到调用代码,在这种情况下返回main。在这种情况下,中断是否类似?它将忽略循环并返回到主回路?是的。注意,这也意味着循环只执行一次。for循环是一个美化的if 1