C语言判断中文字符

#include<stdio.h>

int main()
{
    char s[20];
    int i,j;
    char a,c[3];
    FILE * fp;
    scanf("%s",s);
    fp=fopen(s,"r");
    if(!fp){
        printf("open error\n");
        return 1;
    }
    i=0;
    c[2]=‘\0‘;
    while((a=fgetc(fp))!=EOF){
        if(a&0x80){
            c[i]=a;
            i++;
            if(i==2){
                printf("%s 是汉字\n",c);
                i=0;
            }
        }
        else i=0;
    }
              getchar();
    getchar();
    return 0;
}

汉字编码区别于其他编码的标志就是汉字编码的最高位是1. 0x80在计算机内部表示为1000 0000 这段程序常用于判断当前字符是否是汉字.&是按位与, 对应都是1时才为1, 其它情况均未0. 如: 1010 1011 & 1000 0000 = 1000 0000 即  a&0x80

时间: 2024-10-13 10:13:27

C语言判断中文字符的相关文章

判断中文字符的八种方法C#

软件开发技术交流,同学习共进步,欢迎加群, 群号:169600532  前段时间看见一些判断中文字符的方法,特整理出来,供以后用时方便 方法一 在unicode 字符串中,中文的范围是在4E00..9FFF:CJK Unified Ideographs. 通过对字符的unicode编码进行判断来确定字符是否为中文. protected bool IsChineseLetter(string input,int index) { int code = 0; int chfrom = Convert

Java 完美判断中文字符

Java判断一个字符串是否有中文一般情况是利用Unicode编码(CJK统一汉字的编码区间:0x4e00–0x9fbb)的正则来做判断,但是其实这个区间来判断中文不是非常精确,因为有些中文的标点符号比如:,.等等是不能识别的. 以下是比较完善的判断方法:CharUtil.java http://www.micmiu.com/lang/java/java-check-chinese/ import java.util.regex.Pattern; public class CharUtil {  

Java 判断中文字符

Java判断一个字符串中是否有中文字符有两种方法,但是原理都一样,就是通过Unicode编码来判断,因为中文在Unicode中的编码区间为:0x4e00--0x9fa5 第一种: String chineseStr = "中华人民公社abc"; char[] charArray = chineseStr.toCharArray(); for(int i=0;i<charArray.length;i++){ if ((charArray[i] >= 0x4e00)&&

js判断中文字符长度

就是 你把 String.prototype.len = function() { return this.replace(/[^\x00-\xff]/g, "xx").length; } 放到你的 <Script></script>当中去,然后你要判断长度的那里 就这么用 alert($("#文本框id").val().len()); 就行了

[转载]Unicode中对中文字符的编码

以前写过一篇贴子是写中文在unicode中的编码范围 unicode中文范围,但写的不是很详细,今天再次研究了下unicode,并给出详细的unicode取值范围. 本次研究的unicode对象是unicode 5.2.0版本.现在最新的是6.0版 对于这次研究的unicode把编码分为以下几个平面(英文中是plane,可以认为就是不同的区位) Unicode可以逻辑分为17平面(Plane),每个平面拥有65536( = 216)个代码点,虽然目前只有少数平面被使用. 平面0 (0000–FF

iOS 中文字符判断 正则NSRegularExpression 谓词NSPredicate 和 NSRange

废话不说,直接上代码 #pragma mark - 中文字符判断 - (BOOL)validateContainsChinese:(NSString *)content { NSRegularExpression *regularexpression = [[NSRegularExpression alloc] initWithPattern:@"^[\u4e00-\u9fa5]" options:NSRegularExpressionCaseInsensitive error:nil

24_Shell语言————if条件判断之字符测试

前文中介绍过,bash的条件测试主要有以下3类: 整数测试:比较两个整数谁大谁小,是否相等: 字符测试:比较两个字符串是否相等: 文件测试:测试某个文件是否具有读权限.写权限.执行权限等: 整数测试在前文中介绍过,这里着重讲解字符测试.字符测试采用的比较符号是常用的数学符号: >:大于(在ASCII码表中的先后顺序,从左至右逐字比较) <:小于 ==:等于(注意,= 表示赋值) =~:判断左边的字符串是否能够被右边的模式所匹配,通常用于双中括号中: [[ $opt1=~$opt2 ]] 通常做

判断 sql 中是否含有中文字符-----待验证

select ascii(字段)数字:48-57字母:65-123汉字:123+ select * from t1 where len(unicode(c1)) < 5; 判断c1第一个字符是否是中文,小于5,非中文 SQL判断某列中是否包含中文字符.英文字符.纯数字 一.包含中文字符 select * from 表名 where 列名 like '%[吖-座]%' 二.包含英文字符 select * from 表名 where 列名 like '%[a-z]%' 三.包含纯数字 select

判断一个字符串中是否含有中文字符:

python中的encode和decode: 首先,在Python中字符串的表示是 用unicode编码.所以在做编码转换时,通常要以unicode作为中间编码. decode的作用是将其他编码的字符串转换成unicode编码,比如 a.decode('utf-8'),表示将utf-8编码的字符串转换成unicode编码 encode的作用是将unicode编码的字符串转换成其他编码格式的字符串,比如b.encode('utf-8'),表示将unicode编码格式转换成utf-8编码格式的字符串