c++,调用字符串是否相等的时候,打印看是相等的中文字符,但是两者还是不相等,是因为多了一个隐藏的换行符

编程入门 行业动态 更新时间:2024-10-23 03:13:33

c++,调用字符串是否相等的时候,打印看是相等的中文字符,但是两者还是不相等,<a href=https://www.elefans.com/category/jswz/34/1727478.html style=是因为多了一个隐藏的换行符"/>

c++,调用字符串是否相等的时候,打印看是相等的中文字符,但是两者还是不相等,是因为多了一个隐藏的换行符

打印十六进制,查看,多了一个d

打印十六进制 : std::hex
fade8bdb4d
fade8bdb4

    for (int i =0;i<detect_label.size();i++){for (int j=0;j < img_det_label.size();j++){std::cout<<"=========> "<< detect_label[i].asString() <<"," << img_det_label[j]<< std::endl;std::string s1 = img_det_label[j];std::string s2 = detect_label[i].asString();std::cout << "---s1----" << s1 << std::endl;for(int pp = 0; pp < s1.size(); pp++) {int character = int(s1[pp]); // converting each character to its ascii value std::cout << std::hex << character;// basefield is now set to hex}std::cout << std::endl;std::cout << "---s2----" << s2 << std::endl;for(int pp = 0; pp < s2.size(); pp++) {int character = int(s2[pp]); // converting each character to its ascii value std::cout << std::hex << character; // basefield is now set to hex}std::cout << std::endl;// if (s1pare(s2) == 0) {if (s1==s2) {std::cout << "相等" << std::endl;} else {std::cout << "否" << std::endl;}
}            
在字符添加的时候,可以增加两句话
std::string s1 = "小猫";  // 获取字符串// 删除不可见字符s1.erase(std::remove(s1.begin(), s1.end(), '\r'), s1.end());  // 空格s1.erase(std::remove(s1.begin(), s1.end(), '\n'), s1.end());  // 换行符

更多推荐

c++,调用字符串是否相等的时候,打印看是相等的中文字符,但是两者还是不相等,是因为多了一个隐藏的换行符

本文发布于:2023-12-04 19:45:05,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1662027.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:是因为   字符串   中文   字符   不相等

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!