社区
C语言
帖子详情
请问各位大侠:如何区分一个字符是汉字的前半字符还是后半字符
fyje
2001-08-29 03:27:40
...全文
227
20
打赏
收藏
请问各位大侠:如何区分一个字符是汉字的前半字符还是后半字符
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
keiga
2001-08-31
打赏
举报
回复
to game_boy(gamesboy)
GBK 呢??????
psy
2001-08-31
打赏
举报
回复
GB码的编码范围是首字节A1-F7,尾字节A1-FE,而且首字节A1-A9是符号区,AA-AF这
一段没有定义。BIG5码的编码范围是首字节A1-F9,尾字节分两段,分别是40-7E及
A1-FE,首字节A1-A3是符号区,A4-C5是常用汉字区。
http://www.csdn.net/develop/library/vc/Tips/1838.shtm
game_boy
2001-08-31
打赏
举报
回复
to psy:0xe6 > 0x80,有錯麼?? 後半部分當然不一定了,要不哪裡還有這個問題阿
to keiga:我去年進公司做第一個軟件項目的時候就碰到這類問題,自己解決的,你可以把這段程序寫出來看看,沒有問題的,這樣的問題跟本不需要權威來證明它
keiga
2001-08-31
打赏
举报
回复
to game_boy(gamesboy)
你的理论是谁教的???????
psy
2001-08-31
打赏
举报
回复
错了
"鎔"字是
0xe6,0x67
要注意!!
game_boy
2001-08-31
打赏
举报
回复
沒有問題,因為0x80以下就是單個字符,gbk總是大於0x80的
jimgreen
2001-08-30
打赏
举报
回复
ai
xmxmlt
2001-08-30
打赏
举报
回复
唉,怎么搞的,在GB中,单字节字符的ASCII值<160,而汉字的值>=160
game_boy
2001-08-30
打赏
举报
回复
完全沒有問題,從要判斷的字符往前(或往後)數,並判斷,直至連續兩個字節都小於0x80則可以確定後一個必然是單個的字符,根據記數的奇偶就可以確定當前字節是否漢字的後半部分.
不論是甚麼字庫,gb,big5等等,均好使.
SCUM
2001-08-30
打赏
举报
回复
GB2312 没有办法 只能从头数了
keiga
2001-08-30
打赏
举报
回复
对了,在程序中规定所有字符都占两字节,比如:A为0x0040L,半角字符高位用0补齐,不就解决了吗
keiga
2001-08-30
打赏
举报
回复
kao 人家又没说在GB中,这个问题不用讨论啦,除非系统中每个字符规定占两个字节(包括半角字符),否则混合起来,根本分不出来。
NowCan
2001-08-29
打赏
举报
回复
无法区分,没见很多老软件由于半个汉字问题导致乱码?
cgaga
2001-08-29
打赏
举报
回复
单个字节不可区分
如果是在字符串中分两种情况
如果是宽字节字符集的字符串(unicode字符集,BSTR或LPOLECHAR中),可用奇偶法
如果是多字节字符集的字符串中(普通字符串),只能扫描整个字符串
MountLion
2001-08-29
打赏
举报
回复
数数的方法不行,因为可能包含单字节字符。
MountLion
2001-08-29
打赏
举报
回复
BCB/Delphi: bool AnsiString::IsLeadByte(int index)
fsb_12345
2001-08-29
打赏
举报
回复
gz
fyje
2001-08-29
打赏
举报
回复
我用的也是这个办法,唉,感觉有点笨
psy
2001-08-29
打赏
举报
回复
我用过记数然后判断奇偶的方法
xmxmlt
2001-08-29
打赏
举报
回复
数一下半个字符是奇还是偶
7种方法,统计
字符
串中“子
字符
串”的个数
集许多同学的于一体,可能有错,但是思想多样,恳求
大侠
指正
C#资源\
字符
串格式常用资源
C#资源\
字符
串格式常用资源
字符
串-模式匹配
博客附件,实现了
字符
串的一般模式匹配和kmp模式匹配方法。
STM32_fatfs_shell_SDHC.rar_SDHC STM32_STM32F103源码_fatfs stm32f10
实现了FATFS+SDHC+SD2.0+SD1.1+Shell+DataFlash。这样功能整合网上绝对没有。大约20 的代码是出自本人。 操作方法: 上电后,发
字符
串!s0! 进入dataflash shell模式,发
字符
串close则退出shell模式 发
字符
串!s1! 进入SD卡shell 模式,发
字符
串close则退出shell模式 支持MMC(没测试),SD1.0 SD2.0(普通与SDHC) 源码已经在Keil4中运行过,基于STM32F103平台 源码很多是基于网上的资料。感谢各位辛勤的开源
大侠
。
Object-c 语法快速入门
, NO 是 0 , BOOL 本身就是个 char 。 4、IBOutlet、IBAction是啥玩意,总能看到。 这两个东西其实在语法中没有太大的作用。如果你希望在Interface Builder中能看 ,NO是0,BOOL本身就是个char。 4、IBOutlet、IBAction是啥玩意,总能看到。 这两个东西其实在语法中没有太大的作用。如果你希望在Interface Builder中能看到这个控件对象,那么在定义的时候
前
面加上IBOutlet,在IB里就能看到这个对象的outlet,如果你希望在Interface Builder里控制某个对象执行某些动作,就在方法
前
面加上(IBAction)。 而这两个东西实际上和void是一样的。 5、nil。 Objective-C里的NULL(空)就这么写,表示空指针。 6、为什么是@”
字符
串”而不是”
字符
串”
前
面加上@符号,编译器在编译的时候会在程序中给你留出位置,这样才能保证这个
字符
串不会丢失。反正记住,如果你要想把某些
字符
串写死在程序里,就要用@”
字符
串”,如果忘了用@,程序应该会出错。 superzhou
大侠
指正: 6、为什么是@”
字符
串”而不是”
字符
串” ”
字符
串”是C的
字符
串,@”"是把C的
字符
串转成NSString的
一个
简写. 在需要NSString的地方才需要这个转化,例如NSLog里面. 在需要C string的地方,还是用”
字符
串”的. 另外,@”"这个转换是不支持中文的.例如NSLog(@”
字符
串”); 是一定输出不了中文的. 四、Objective-C 2.0 Objective-C 2.0是Leopard新增加的一门语言,其实和原来的Objective-C是一样的。主要是增加了属性。详细的内容这里不写了,可以参阅Allen Dang的这篇文章,写的很明白。 http://blog.codingmylife.com/?p=81 五、总结 现在来总结一下怎么看Objective-C的代码和怎么开始学Objective-C吧。 1、记住Objective-C就是C,不是火星语,这个很关键。 2、记住你自己看不懂不表示脑子迟钝,大部分人第一次看Objective-C的代码可能比你还要迟钝。 3、把CocoaChina.com加入收藏夹,看不明白代码就来再看一遍这篇开宗明义的好文。 4、文档很关键,当你看不懂某些东西说的是什么的时候,先查Cocoachina,再看英文文档里面的API说明,尤其这个类是以NS开头的时候。再不行就去google搜,直接把你要查的方法贴进google,通常能找到不少人也在问同样的问题,自然也有热心人活雷锋帮助回答。 5、可以看hello world例子,但是不能总看,看多了真的会晕。另外,千万要放弃苹果官方的Currency Converter货币转换的例子,那个例子是毒药,刚学的时候越看越蒙。 6、学习一门语言最好的方法是先用,和学外语一样,当你会说的时候自然会读。给自己设立
一个
简单的目标,比如做
一个
简单的程序,然后一点点解决问题。这样学习起来比只看例子快得多。
C语言
69,371
社区成员
243,080
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章