C++ string字符串比较问题

一般来说直接用string提供的 == 应该就能实现了,但是今天我遇到的问题简直棘手,一直都判断不了。

然后我就分别输出了两个字符串的长度,发现其中之一的长度始终比字符个数大一个,我于是强制转换成int型进行输出发现后面是多了个终结符号,然后我就想着既然一个有,那我在另一个里面加上一个终止符不就好了,然而不行,还是判断不了。

然后我又在度娘肚子里扒终于找到一个方法,就是既然添加不行,那我就删除好了,于是我就用string提供的erase方法删除了多余的终止符。判断成功。

数据格式: WordData[308] == approximately

string buff = buf;

        int equal = (int)buff.find("==");

        string sub = buff.substr(equal+3);

        sub.erase(sub.length()-1);

        cout<<(int)sub[sub.length()]<<endl;

        if(sub == str){

            cout<<"strline str:"<<sub.length()<<"\n"<<str.length()<<endl;

            return "";

        }


转载于:https://my.oschina.net/u/2276921/blog/526587

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值