Cherries Man 2023-01-07 23:11 采纳率: 100%
浏览 158
已结题

C++遍历中文字符串,并与中文字符进行比较

C++ 如何按照索引提取中文字符串中的某个字符,并进行比较?
我写了下面的代码,但是会出现问题,如下:

img

一种做法是转换成w_char,用c语言风格的字符串,请问各位还有别的办法吗?

  • 写回答

2条回答 默认 最新

  • 会修bug的猫 2023-01-08 01:16
    关注

    可以去了解一下中文GB2321编码格式
    下面代码提供一个简单的思路

    #include<iostream>
    #include<string>
    using namespace std;
    string deleteMultiZero(string str) {
        string res = "";
    
        for (int i = 0; i < str.length() - 1;) {
            string temp="";
            if (str[i] < 0) {   //假设只有中英文的话可以这样简单判断
                temp = temp+str[i]+str[i+1];
                i += 2;
            }
            else {
                temp += str[i];
                i++;
            }
            if (temp != "零") {
                res += temp;
            }
        }
        return res;
    }
    
    int main(){
        string str = deleteMultiZero("贰仟123零01abc零贰");
        cout << str;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 1月16日
  • 已采纳回答 1月8日
  • 创建了问题 1月7日

悬赏问题

  • ¥15 2024-五一综合模拟赛
  • ¥15 下图接收小电路,谁知道原理
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭