gpt4 book ai didi

c++ - 将参数传递给过程和从过程传递参数

转载 作者:行者123 更新时间:2023-11-28 07:07:44 25 4
gpt4 key购买 nike

我目前正在制作一个非常基础的程序(是的,我是个新手),我在向过程传递参数和从过程中传递参数时遇到了问题。

void processAPrice();
void getPriceInPounds(priceInPounds);
void convertPriceIntoEuros(int priceInPounds);
void showPriceInEuros();
void calculateSum();
void produceFinalData();


int main()
{
char answer('Y');
int numberOfPrices(0);

while (answer = 'Y')
{
processAPrice();
numberOfPrices++;
cout << "Continue? (Y/N)";
cin >> answer;
}

if (numberOfPrices > 0)
produceFinalData();


system("PAUSE"); //hold the screen until a key is pressed
return(0);
}


void processAPrice() //
{
getPriceInPounds(priceInPounds);
convertPriceIntoEuros(priceInPounds);
showPriceInEuros();
calculateSum();
}

void getPriceInPounds(int priceInPounds) //
{
int priceInPounds;
cout << "Enter a price (in Pounds): /234";
cin >> priceInPounds;

}


void convertPriceIntoEuros(int priceInPounds) //
{
const int conversionRate(0.82);
int priceInEuros = (priceInPounds / conversionRate);

在 processAPrice 过程中,我正在调用 getPriceInPounds 过程,但我一直收到一条错误消息,指出 priceInPounds 是一个未声明的标识符。我想这是因为我在 processAPrice 过程的参数中得到了它,但如果我把它取出来,我肯定无法将 priceInPounds 变量传递回 processAPrice 吗?

谁能解释一下如何正确地做到这一点?基本上我需要它,以便将变量 priceInPounds 传递回 processAPrice,这样我就可以将相同的变量传递给 convertPriceIntoEuros。

谢谢:)

顺便说一句,我正在使用 VS13 和 c++!

最佳答案

您在函数声明中缺少参数类型。你需要

void getPriceInPounds(int priceInPounds);
^^^

另一方面,该函数根本不需要参数,因为您不使用它。在我看来,您想输入价格,然后将其返回给调用者。在这种情况下,您的函数可能如下所示:

int getPriceInPounds()
{
int priceInPounds;
cout << "Enter a price (in Pounds): /234";
cin >> priceInPounds;
return priceInPounds;
}

int convertPriceIntoEuros(int priceInPounds) //
{
const int conversionRate(0.82);
return priceInPounds / conversionRate;
}

你会这样调用它:

int pounds = getPriceInPounds();
int euros = convertPriceIntoEuros(pounds);

等等。

关于c++ - 将参数传递给过程和从过程传递参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21514471/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com