这个字符串长度为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。
如果其中有数字英文符号等,用楼上的 alert("1sS#符".length) 方法是极度不准确的。其结果为 5alert(len("1sS#符")) //英文、数字、符号均为一个字节,汉字为两个。 因此结果为 6
function len(s) {
var l = 0
var a = s.split("")
for (var i=0i<a.lengthi++) {
if (a[i].charCodeAt(0)<299) {
l++
} else {
l+=2
}
}
return l
}