感谢您观看这篇文章。我的编程需要一些帮助。我以前用 turbo pascal 编译,现在我正在学习 C++。问题来了。
我想用这样的输入和输出做一个数学东西。
输入(伪代码):
Var a,b:=int; op:=char;
readln(a);
readln(b);
case op of
"+" : write(a+b);
"-" : write(a-b);
">" : if a>b then write("true"); else write("false");
我试过像这样用 C++ 来做,但编译失败。我不把 include 放在这里是因为我真的不明白为什么它会变成粗体。我是这样写的。
void main()
{
int a,b,c;
char op;
std::cin>>a>>op>>b;
switch (c){
case (std::cin>>op == "+") :{
c=a+b;
std::cout<<c<<std::endl;
}
}
}
这是错误
1>test03.cpp(10): error C2051: case 表达式不是常量
1>test03.cpp(14):警告 C4060:switch 语句不包含“case”或“default”标签
谁能帮我?谢谢。
最佳答案
你不给 c 赋任何值,当你想在 switch block 中使用它时,它包含垃圾。
我想你想写
switch(op)
和
case '+'
关于c++ - C/C++ 语言的新手。出了什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16759414/