“在”int“c ++之前的预期主要功能

时间:2014-03-06 17:24:05

标签: c++

我是编程新手,我需要为Arduido目的学习它。我使用这段代码来测试一些东西但是我一直在“int”“错误之前得到”预期的主函数,并且它还说没有声明位置函数。

我宣布错了吗?我尝试了很多不同的东西,并不断得到同样的信息。我的目标是在cout上调用位置函数,在屏幕上输入“1”并获得3,6,9等。

#include <iostream>

using namespace std;
int main()
 { 
 int degree=0;
 int r=1;
 while (r != '0')
  {
  cin >> r;

  // this is where I get the error //

  int position()
   {
    if ( r == 1 )
    { 
    degree=degree+3;
    }
    return degree;
   }
  cout << position();
  }
 return 0;
 }

2 个答案:

答案 0 :(得分:2)

C ++中不允许使用嵌套函数。将您的代码更改为:

#include <iostream>

using namespace std;
int main()
{ 
// code
}

int position()
{

}

答案 1 :(得分:1)

问题是你的函数position在函数main中,这在c ++中是不可能的。将position移出main功能。

int position(int r, int degree)
{
  if ( r == 1 )
  { 
    degree=degree+3;
  }
  return degree;
}

int main()
{ 
  int degree=0;
  int r=1;
  while (r != '0')
  {
    cin >> r;
    cout << position(r, degree);
  }
  return 0;
}