0

我对 C++ 很陌生。这就是我目前正在处理的内容,我想你可以猜到我试图应用于程序的逻辑,以便它可以工作。我需要用户提供要执行的算术,如果它是某个将数字相加的算术。这是代码:

#include <iostream>
#include <string>
using namespace std;

int main()
{
    int x;
    int v;
    int sum;
    string input;
    cout << "Choose arithmetic: addition or subtraction? " << endl;
    cin >> input;
    if(input=='Addition'||input=='addition')
    {
        int first;
        int second;
        int sum = first+second;
        cout << "Enter the first number: " << endl;
        cout << "Enter the second number: " << endl;
        cout << "The sum of these numbers is: " << sum << endl;
    }

    return 0;
}

编译器给我以下错误: 13错误:'input == 1953066862'中的'operator =='不匹配

先感谢您!

4

5 回答 5

4

C++ 中的文字字符串使用双引号,而不是单引号。也就是说,"Addition"而不是'Addition'.

单引号字符串是一种称为“多字符常量”的东西,它是有效的,但绝对不是你想要的。

于 2013-08-29T02:04:01.640 回答
0

在 C/C++ 中,字符串应该在 "" 而不是 '' 中。应该是"Addition"

于 2013-08-29T02:04:09.053 回答
0

尝试在以下行中使用双引号 (") 而不是单引号 ('):

if(input=='Addition'||input=='addition')

于 2013-08-29T02:09:24.963 回答
0

在 C++ 中,文字/常量字符串用双引号括起来(例如“字符串”)。文字/常量单个字符用单引号 ('c') 括起来。

由于这是一种良好的编程习惯,您可能还希望将用户的输入转换为小写,然后执行条件(使用函数 tolower())。这样你就可以覆盖所有的大写/小写排列:)。

C++ 字符串的 tolower 函数

于 2013-08-29T02:12:25.127 回答
0

你可以只使用一个运算符,检查一下:

http://www.programmingtunes.com/a-simple-calculator-in-c/

您只需在此处输入完整的陈述并获得答案。例如:5+6

于 2013-11-06T11:03:28.610 回答