|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
C++论坛
→
『 C++教室 』
→ [求助]怎么样统计汉字?
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
1561
人关注过本帖
标题:
[求助]怎么样统计汉字?
只看楼主
加入收藏
dyflovexlp
等 级:
新手上路
帖 子:4
专家分:0
注 册:2006-6-8
楼主
收藏
问题点数:0 回复次数:14
[求助]怎么样统计汉字?
请问怎么样统计文件里的汉字字数?
搜索更多相关主题的帖子:
汉字
统计
2006-06-08 21:01
举报帖子
使用道具
赠送鲜花
行空天马
等 级:
新手上路
威 望:
1
帖 子:523
专家分:0
注 册:2006-5-19
第
2
楼
收藏
得分:0
中、英文在一起吗?
哪怎么统计呢?
顶一下吧。
好好学习,天天向上。
2006-06-09 11:50
举报帖子
使用道具
赠送鲜花
stylev
等 级:
新手上路
威 望:
1
帖 子:136
专家分:0
注 册:2006-5-30
第
3
楼
收藏
得分:0
若全部都是中文....
char str[] = "我喜欢编程!";
chin_len = strlen(str)/2;
若中文、e文杂交...
char str[] = "我喜欢c编程!";
则字符数:
int num = 0;
for (int i = 0; str[i]; i++) {
if (str[i] & 0x80) {
i++;
}
num++;
}
E-mail/MSN: stylev@
2006-06-09 12:03
举报帖子
使用道具
赠送鲜花
wangxiang
等 级:
新手上路
威 望:
5
帖 子:376
专家分:0
注 册:2006-3-28
第
4
楼
收藏
得分:0
给你一个例子统计汉字字数
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
ifstream infile("D:\\china.txt");
if(!infile)
{
cout<<"cann't open this file"<<endl;
exit(1);
}
char ch;
int i = 0;
while(infile.get(ch))//读取一个字符,即一个字节
i++;
cout<<i/2<<endl;//汉字是两个字节,所以除2
system("pause");
return 0;
}
2006-06-09 12:06
举报帖子
使用道具
赠送鲜花
wangxiang
等 级:
新手上路
威 望:
5
帖 子:376
专家分:0
注 册:2006-3-28
第
5
楼
收藏
得分:0
以下是引用
stylev
在2006-6-9 12:03:15的发言:
若全部都是中文....
若中文、e文杂交...
char str[] = "我喜欢c编程!";
则字符数:
int num = 0;
for (int i = 0; str[i]; i++) {
if (
str[i] & 0x80)
{//这个表达式解释一下
i++;
}
num++;
}
2006-06-09 12:10
举报帖子
使用道具
赠送鲜花
aogun
等 级:
贵宾
威 望:
17
帖 子:638
专家分:0
注 册:2006-4-5
第
6
楼
收藏
得分:0
我来帮stylev解释下,根据规定,汉字的内码第一字节都是在0x80以上,如:
GBK范围:
1st byte 2nd byte
0x81~0xfe 0x40~0x7e and 0x80~0xfe
BIG5范围:
1st byte 2nd byte
0x81~0xfe 0x40~0x7e and 0xa1~0xfe
str[i] & 0x80这个语句是判断第一个字节是否在0x80之上即0x81~0xfe之间,如果是则当前2字节是汉字,否则则不是汉字
世界上总共有 10 种人,一种懂得什么是二进制 ,一种不懂。
2006-06-09 14:25
举报帖子
使用道具
赠送鲜花
wangxiang
等 级:
新手上路
威 望:
5
帖 子:376
专家分:0
注 册:2006-3-28
第
7
楼
收藏
得分:0
o
xie le
2006-06-09 14:54
举报帖子
使用道具
赠送鲜花
wfpb
等 级:
贵宾
威 望:
29
帖 子:2188
专家分:0
注 册:2006-4-2
第
8
楼
收藏
得分:0
标点符号呢?不考虑啊?
" target="_blank">
[glow=255,red,2]
wfpb的部落格
[/glow]
学习成为生活的重要组成部分!
2006-06-09 17:26
举报帖子
使用道具
赠送鲜花
aogun
等 级:
贵宾
威 望:
17
帖 子:638
专家分:0
注 册:2006-4-5
第
9
楼
收藏
得分:0
[QUOTE]标点符号呢?不考虑啊?[/QUOTE]
可以继续根据内码过滤
世界上总共有 10 种人,一种懂得什么是二进制 ,一种不懂。
2006-06-09 17:29
举报帖子
使用道具
赠送鲜花
wfpb
等 级:
贵宾
威 望:
29
帖 子:2188
专家分:0
注 册:2006-4-2
第
10
楼
收藏
得分:0
知道,我是说大家的代码,没考虑符号算不算字数~
" target="_blank">
[glow=255,red,2]
wfpb的部落格
[/glow]
学习成为生活的重要组成部分!
2006-06-09 18:58
举报帖子
使用道具
赠送鲜花
15
1/2页
1
2
快速回复:
[求助]怎么样统计汉字?
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.049379 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved