的代码如下:

#include <stdio.h>
#include <string>
int 取文本长度_字符数(char *s){//代码摘自 精易模块 文本_逐字分割()  可能仅对gbk有效 
	int c = strlen(s);int n = 1;int z;int leng = 0;
	while (n<=c){if (n + 1 > c){z = 1;}else{
	if (s[n-1]>128){z = 2;}else{if (s[n - 1]!=13){z = 1;}
	else{if (s[n + 1-1] != 13){z = 2;}else{z = 1;}}}
	}leng++; n = n + z;}return leng;	
}


int main(){


	char str[] = "你好a";

	int len = 取文本长度_字符数(str);

	printf("字符数:%d", len); //输出5
	getchar();
	return 0;
}


相关推荐

c++字符(string char)操作函大全

字符串拼接查找与替换:字符串比较字符串存取字符串插入和删除string子串(子文本)功能描述:·查找:查找指定字符串是否存在·替换:在指定的位置替换字符串函数原型://查找str第一次出现位置,从pO

原生JavaScript生成随机字母 js随机字符

JavaScript取随机字母:方式有很多 我比较喜欢这一种 其中字符列表 和 要取的个数 改起来都比较方便<script> function 取随机字母(count){

c++ char与wchar_t区别 windows中aPI函后面带a和W区别

C++基本数据类型中表示字符的有两种: char、wchar_t。char叫多字节字符,一个char占1个字节,之所以叫多字节字符是因为它表示一个英文字符时是一个字节,而中文字符时是多个字节。wcha

php截文章摘要方法 php截取汉字字符 按长度

function 截取摘要($str,$length=150){ $intro= preg_replace("/\\s*<.*?>\\s*/","&quo

c++MFc基于对话框如何新建一个窗口

第一步:调出资源视图,添加一个dialog添加后,这个 ID是可以随意修改的(在属性里)第二步:在可视化编辑界面上面 点击右键.为这个对话框 添加类,名字一般以大写C开头类创建完毕后,会自动生成 类名

c++ 字符串函数 cString 封装易语言: 文本_出中间文本

CString 文本_取出中间文本(CString &原文本, CString 左边文本, CString 右边文本){ CString 返回文本; int 开始位置 = 原文本.

c++字符据类型 字符的一些规律

字符集分类如果按照字符集来对字符串的数据类型进行分类,大概分为以下三种Ansi:char、char*、const char*CHAR、PCHAR、PSTR、LPSTR、LPCSTRUnicode:(宽

帝国cms文章内容储存在哪个数据表?

帝国cms的数据库优化做的非常棒,想详细的研究下他的数据库结构,结果发现连文章放哪了也没找到.研究了一下发现默认的文章模型,正文内容原来根本没有存放在数据库而是以文件的形式存放的.在字段管理里面,有一

JavaScript字母(指定长度且不重复)

使用原生js生成n个不重复的随机字母方法<meta charset="UTF-8"> <script> function suijizimu(len){

mysql效率研究():char(20) 和 char(40) varchar(255)和varchar(256) 和 varchar(50)和varchar(100) 的区别

/*varchar(255)和varchar(256) 和 varchar(50)和varchar(100) 的区别*/ $sql="create table char20(