首页 > 解决方案 > 如何检查字符串或字符是否有中文字符然后显示其他字符?

问题描述

我想检查每个单词的字符串或字符。如果有中文字符显示其他字符

#include <stdio.h>
int main()
{
    char ch[] = "Hello, 您Hi好!"; 
    string str1("Hello, 您Hi好!");
    printf("%s\n",ch);
    cout << "The string \"" << str1 << "\"'s size is " << str1.size() << endl;
      //for ch find the chinese char
      //if has chinese char show '|||'
      //normal to print
      //expect output:Hello, |||Hi|||!
    return 0;
}

标签: c++visual-c++

解决方案


#include <bits/stdc++.h>

int main()
{

    char ch[] = "Hello, 您Hi好!";
    char c;

    for(int i = 0; i < strlen(ch); i++) {
        c = ch[i];
        if ((unsigned int)c >= 0x4E00u && (unsigned int)c <= ox9FFFu) {
            printf("|||");
        }
        else printf("%c", c);
    }

    printf("\n");

    return 0;

}

推荐阅读