功能有些问题以及它们如何干扰main

时间:2017-09-16 00:53:11

标签: c++

我最近尝试制作一个在main之外有几个函数的程序,但由于某种原因,“声明与我的所有变量和函数都不兼容”。是否有一种简单的方法来使用main之外的函数并可互换地引用变量?我收到的错误是:E0147。这是我的代码:

    #include <iostream>
using namespace std;
int dager;
int mintemp;
int maxtemp;
int nedbor;
int i = 1;
int j;
int mintempg;
int maxtempg;
int nedborg;

int mintemp() {
    cout << "hva er dag:" << i << " sin min temp? \n";
    cin >> mintempg;

    if (mintempg >= -70 && mintempg <= 70)
    {
        mintemp += mintempg;
    }
    else
    {
        cout << "ugyldig temperatur.";
        mintemp();
    }
}
int maxtemp() {
    cout << "hva er dag:" << i << " sin max temp? \n";
    cin >> maxtempg;

    if (maxtempg >= mintempg && maxtemp <= 70)
    {
        maxtemp += maxtempg;
    }
    else
    {
        cout << "ugyldig temperatur.";
        maxtemp();
    }
}
int nedbor() {
    cout << "hva er dag:" << i << " sin mm nedbør? \n";
    cin >> nedborg;

    if (nedborg >= 0 && nedborg <= 200)
    {
        nedbor += nedborg;
    }
    else
    {
        cout << "ugyldig mengde nedbor.";
        nedbor();
    }
}



int main() {
    cout << "Hvor mange dager er det i måneden? " << "\n";
    cin >> dager;


    for (j = dager; j > 0; j--) {
        if (dager >= 28 && dager <= 31)
        {
            mintemp();

            maxtemp();

            nedbor();

            i++;
        }
    }
    system("pause");
}

因此,你可以看到它为我的代码提供了很多可读性,就像这样做,这就是为什么我决定我不希望所有这些都是主要的。此外,它使以后更容易重用代码。

附带问题:有没有一种方法可以让编译器在没有使用系统的情况下运行代码时不会关闭(“暂停”); ?,我似乎记得我们的教授在我们的一个讲座中提到过它,但我并没有完全理解它。无论如何都有帮助赞赏!!

1 个答案:

答案 0 :(得分:-1)

对于你的问题;为了防止窗口关闭,请查看此帖子。

- 如果您正在使用Visual Studio,并且您正在从IDE启动控制台应用程序:按CTRL-F5(无需调试启动)将启动应用程序并保持控制台窗口打开,直到您按任意键。

- 你可以插入std :: getchar();在你的主要功能结束时。该功能包含在。

参考:stackoverflow.com/questions/2529617/...