我只是在尝试C ++,并试图通过这个可爱的网站http://www.learncpp.com/了解C ++的基础知识。

现在,我只是尝试以下代码:

#include <QCoreApplication>
#include <iostream>

using namespace std;


int trollFuncyA(int x){
    x++;
    cout << "we are In A and x = " << x << endl;
    if (x > 20) return 1 ;
    cout << "we are In a1 and x = " << x << endl;
    int trollFuncyB(x);
    cout << "we are In a2 and x = " << x << endl;
    return 0;
}

int trollFuncyB(int x){
    cout << "we are In B9 and x = " << x << endl;
     x++;
     x =  x + 1;
      cout << "we are In B and x = " << x << endl;
     int  trollFuncyA(x);
      cout << "we are In B2 and x = " << x << endl;
      return 0;
}

int main()
{

    int troll = 0;

   trollFuncyA(troll );

    return 0;
}


当我尝试运行它时,我遇到了一些问题:

1.)警告:C4189:'trollFuncyB':局部变量已初始化但未引用(我该如何解决还是无法解决)

2.)我希望int X最多可以加20,但是它只运行一次trollFuncyA直到函数结束,几乎似乎忽略了trollFuncyB .....无论这个程序多么愚蠢。有可能进行此操作吗?我只是想在这里做实验,我知道for / while循环..我只是认为这将能够按预期运行

问候新人

最佳答案

int trollFuncyB(x);


这不会调用trollFuncyB。它声明一个名为trollFuncyB且类型为int的局部变量,并将其值初始化为x。您收到该警告,因为从未使用此局部变量。

调用这样的函数:

trollFuncyB(x);

10-04 12:59