-4

过去几天我一直在学习 C++,我开始遇到这个简单的问题,我的控制台无法正确打印,前几天我让它与更复杂的程序一起工作,现在我什至无法让它工作,请帮忙?

#include <iostream>

using namespace std;

int main()
{
    int variable = 1;
    cout << "hello world" << endl;
    cout << variable << endl;
    variable = increment(variable);
    cout << variable << endl;
    system("pause");
}

int increment(int a)
{
    a++;
    return a;
}

当我运行程序时,控制台打印

“你好世界”

1

“按任意按钮继续”

为什么修改后的变量不打印?我已经尝试了一些设置,似乎在变量打印后它不会再次打印,这是怎么回事?

4

3 回答 3

5

您的代码不应该编译,您可能正在运行旧版本。要么添加增量函数的前向声明(int increment(int);在 main 之前),要么将增量函数的定义放在 main 方法之前。

于 2013-06-05T15:41:54.360 回答
0

你的错误是:你没有声明你的(增量)函数。

你在这里调用你的功能:

variable = increment(variable);

在这里,您正在定义您的功能:

int increment(int a)
{
a++;
return a;
}

但在你调用你的函数之前,你需要声明它,试试这个:

int increment(int a); //just before (variable = increment(variable);)

注意:您的代码甚至没有编译,但无论如何,如果您注释该system("pause");行并包含声明,它将编译。

于 2013-06-05T15:42:30.037 回答
0

你必须定义:

int increment(int a);

在主要之前

    using namespace std;
    int increment(int a);
    int main()
    {
        int variable = 1;
        cout << "hello world" << endl;
        cout << variable << endl;
        variable = increment(variable);
        cout << variable << endl;
        system("pause");
    }

    int increment(int a)
    {
        a++;
        return a;
    }
于 2013-06-05T15:42:37.417 回答