怎么判断字符串长度是否是10

JavaScript08

怎么判断字符串长度是否是10,第1张

这个字符串长度为10个字符。

可以用strlen("ab'1'\\\12803")来求这个字符串的长度。

也可以用sizeof("ab'1'\\\12803")来求,但是这个求出的结果是多了一个字符串结束符\0。

可以试着输出这个字符串看看是不是10个字符。

strlen()函数判断的字符串长度是以\0为结尾作为标志的。

当char * m=new char[TOKEN_LENGTH]后,虽然为指针分配了地址,但是其指向的内容未被初始化,所以m指向的内容是未知的,可能在第24个字符的位置发现了\0所以strlen()显示长度为24。

数据类型

字符串数据类型是建模在形式字符串的想法上的数据类型。字符串是几乎在所有编程语言中可以实现的非常重要和有用的数据类型。在某些语言中它们可作为基本类型获得,在另一些语言中做为复合类型获得。多数高级语言的语法允许通常用某种方式引用起来的字符串来表示字符串数据类型的实例;这种元字符串叫做“文本”或“字符串文本”。

以上内容参考:百度百科-字符串

string对象的length属性,它表明了字符串中的字符个数包括所有符号。例:

mytest="This

is

a

JavaScript"

mystringlength=mytest.length

最后mystringlength返回mytest字串的长度为20。

因为中文字占两个字节,英文占一个字节。

方法1:把中文字替换成两个字母。然后计算长度。

方法2:直接判断中文,长度+2。

运用的方法大同小异。都是通过正则表达式,写unicode编码。

方法1中

[\u4e00-\u9fa5]:匹配中文字符

[^\x0000-\x00ff]:匹配双字节字符(包括中文字)

正则表达示 /[\u4e00-\u9fa5]/g 的 g 必须要,global,全部都要检查的意思。没有的话输出的是(2333aa哈)

方法2中的函数

扩展: