c++ 怎样获取一串字符串的字符数,不是字节数

问题描述

c++ 怎样获取一串字符串的字符数,不是字节数

想获取一串包括中文的字符串的字符数,请问有哪个函数可以调用.。。。。。。。。。。。。。。。

解决方案

看看http://blog.csdn.net/infoworld/article/details/38119229

解决方案二:

 #include<iostream>
using namespace std;

int main()
{
    int count = 0;
    char* buffer = "爱神as箭34按.实";
    while(*buffer++ != '')
    {
        count++;
        //当前字符是中文字符,则让指针多移一位,因为中文字符占两个字节
        if(!(*buffer >= 0 && *buffer <= 127))
            buffer++;
    }
    cout << count <<endl;
    system("pause");
}

结果:

解决方案三:

strlen(数组名)

解决方案四:

一个汉字两个字符嘛,strlen就可以喽

解决方案五:

string strTest =“tyu”;
int i =strTest .length();

解决方案六:

strlen()

时间: 2024-10-13 13:11:37

c++ 怎样获取一串字符串的字符数,不是字节数的相关文章

Java中文字符所占的字节数

Java语言中,中文字符所占的字节数取决于字符的编码方式,一般情况下,采用ISO8859-1编码方式时,一个中文字符与一个英文字符一样只占1个字节:采用GB2312或GBK编码方式时,一个中文字符占2个字节:而采用UTF-8编码方式时,一个中文字符会占3个字节.我们可以通过String类的getBytes(String charsetName)方法来获取到字符串以指定编码方式编码后所得到的字节数组,然后字节数组的长度就是该字符串在指定编码方式下所占的字节数.下面为一个测试示例: public s

Javascript 计算字符串在localStorage中所占字节数_javascript技巧

最近项目有个需求要用js计算一串字符串写入到localStorage里所占的内存,众所周知的,js是使用Unicode编码的.而Unicode的实现有N种,其中用的最多的就是UTF-8和UTF-16.因此本文只对这两种编码进行讨论. 下面这个定义摘自维基百科(http://zh.wikipedia.org/zh-cn/UTF-8),做了部分删减. UTF-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,可以表示Unicode

php获取utf8字符串的字符长度实例

  今晚在写框架的表单验证类时,需要判断某个字符串长度是否在指定区间内,很自然地,想到了PHP中的strlen函数.  代码如下   $str = 'Hello world!中'; echo strlen($str); // 输出12 测试一下中文  代码如下   $str = '你好,世界!'; echo strlen($str); // GBK或GB2312下输出12,UTF-8下输出18  PHP内置的字符串长度函数strlen无法正确处理中文字符串,它得 到的只是字符串所占的字节数.对于

《Python语言程序设计》——3.3 字符串和字符

3.3 字符串和字符 关键点:字符串(第1章讲过)是一连串的字符.Python处理字符和字符串的方式是一样的. 在Python里,你除了可以处理数值,还可以处理字符串.一个字符串就是一串包括文本和数字的字符.字符串必须被括在一对单引号( ' )或者双引号( " )里.Python没有字符数据类型.一个字符的字符串代表一个字符.例如: 第一条语句将只有字符A的字符串赋值给变量letter.第二条语句将只有数字字符4的字符串赋值给变量number.第三条语句将字符串"good mornin

再谈Python中的字符串与字符编码(推荐)_python

本节内容: 1.前言 2.相关概念 3.Python中的默认编码 4.Python2与Python3中对字符串的支持 5.字符编码转换 一.前言 Python中的字符编码是个老生常谈的话题,同行们都写过很多这方面的文章.有的人云亦云,也有的写得很深入.近日看到某知名培训机构的教学视频中再次谈及此问题,讲解的还是不尽人意,所以才想写这篇文字.一方面,梳理一下相关知识,另一方面,希望给其他人些许帮助. Python2的 默认编码 是ASCII,不能识别中文字符,需要显式指定字符编码:Python3的

Swift语法专题四——字符串与字符

Swift解读专题四--字符串与字符 一.引言         Swift中提供了String类型与Characters类型来处理字符串和字符数据,Swift中的String类型除了提供了许多方便开发者使用的方法外,还可以与Foundation框架的NSString类进行转换,使用起来十分方便. 二.String基础         在Swift中,使用双引号来定义字符串,开发者可以通过如下代码来创建一个字符串常量: let str = "Hello, playground" 可以通过

输入一个字符串并打印出该字符串中字符的所有排列

题目: 输入一个字符串, 打印出该字符串中字符的所有排列. 方法: 使用递归依次交换位置, 打印输出. 代码: /* * main.cpp * * Created on: 2014.6.12 * Author: Spike */ /*eclipse cdt, gcc 4.8.1*/ #include <stdio.h> void Permutation(char* str, char* begin); void Permutation(char* str){ if(str == NULL) r

c# 获取字符串的字节数

将字符串转换为ASCII编码数组,只要是中文字节码就是ASCII编码63即"?",所以可以由此来进行判断 class StringOP { /// /// 获取中英文混排字符串的实际长度(字节数) /// /// 要获取长度的字符串 /// 字符串的实际长度值(字节数) public int getStringLength(string str) { if (str.Equals(string.Empty)) return 0; int strlen = 0; ASCIIEncodin

在SQL中获取一个长字符串中某个字符串出现次数的实现方法

以下是对在SQL中获取一个长字符串中某个字符串出现次数的实现方法进行了详细的分析介绍,需要的朋友可以参考下   在SQL中获取一个长字符串中某个字符串出现次数的实现方法 比如有个字符串: X-BGS-2010-09-15-001 我想知道其中'-'出现的次数,可以用下面的方法实现,而不需要复杂的一个个字符分析. declare @a varchar(100) set @a='X-BGS-2010-09-15-001' select len(replace(@a,'-','--'))-len(@a