C➕➕如何比较中文字符串?

我是这样使用的
string a="成绩";string b;
cin b 然后直接用等号判断a和b是否相等 为什么不可以?

c++比较字符串可以直接使用==判断,也可以使用a.compare(b)
需要包含string头文件。

img

代码如下:

#include <iostream>
#include <string>
using namespace std;
int main()
{
    string a="姓名"; 
    string b;
    cin >> b;
    if (a==b)
    {
        cout << "相等"<<endl;
    }else
        cout <<"不相等"<<endl;


    //使用compare
    if (a.compare(b)==0)
    {
        cout << "相等"<<endl;
    }else
        cout <<"不相等"<<endl;
    return 0;
}

img

编译报错吗?什么错误信息?