我是初学C ++,在LearnCpp.com的第2章测验中。我被困住了,有一个问题。你能在std :: cout语句中添加变量吗?例如:
该程序不会显示我的答案。一旦用户在输入值后按下输入,程序就结束。提前谢谢你的帮助。
编辑:很抱歉没有发布整个代码。我也是论坛的新手。我添加了()
,就像有人建议的那样。当我运行该程序时,我认为我看到它显示了一瞬间的答案,并没有显示Press any key to continue. . .
#include "stdafx.h"
#include <iostream>
int main()
{
double first_value;
double second_value;
char user_operator;
std::cout << "Enter a double value: ";
std::cin >> first_value;
std::cout << "Enter a second double value: ";
std::cin >> second_value;
std::cout << "Enter one of the following (+, -, *, /): ";
std::cin >> user_operator;
if (user_operator == 43 || user_operator == 45\
|| user_operator == 42 || user_operator == 47)
switch (user_operator)
{
case 43:
std::cout << " " << (first_value + second_value) << "\n";
break;
case 45:
std::cout << " " << (first_value - second_value) << "\n";
break;
case 42:
std::cout << " " << (first_value * second_value) << "\n";
break;
case 47:
std::cout << " " << (first_value / second_value) << "\n";
break;
}
else std::cout << "Please enter a valid operator.";
return 0;
}
答案 0 :(得分:3)
是的,您可以在std::ostream& operator<<(std::ostream&, T)
次来电中执行操作。您只需遵守operator precedence并在表达式周围添加括号(()
),以便在必要时消除歧义。
这是一个固定的Demo。