黑马程序员技术交流社区

标题: 关于求字符串的长度 [打印本页]

作者: 许庭洲    时间: 2012-4-28 11:24
标题: 关于求字符串的长度
本帖最后由 许庭洲 于 2012-4-28 12:39 编辑

string strTmp = "abcdefg张三李四";
int m= System.Text.Encoding.Default.GetBytes(strTmp).Length;
int n= strTmp.Length;
以上代码执行完后,m=15,n=11
请求高手,为什么m和n的长度不一样?


作者: 毛运    时间: 2012-4-28 11:42
m取得的是字符串的字节数,n取得是字符串的长度
作者: 黑马李亮    时间: 2012-4-28 14:40
第一种你把字符串转换成了字节当然长度会变了啊
作者: 过客    时间: 2012-4-28 17:31
第一种是字节的长度,第二种是字符串的长度,而一个汉字是占两个字节。so m是15,而n是11
作者: 胡杰震    时间: 2012-4-28 18:03
一个是字符串的长度,一个是字节!肯定不一样噻!
作者: 黄燕京    时间: 2012-4-28 19:37
m=那个是字节的长度,n=那个是字符串的长度
作者: 邢欢    时间: 2012-5-4 11:15
m是字节的长度,n是字符串的长度,而一个汉字是占两个字节的
作者: 张娜    时间: 2012-5-5 22:26
一个英文字母和数字是一个字节,而一个汉字是两个字节,所以m的值是15,n的值是11.
作者: 错,谁的错丶    时间: 2012-5-6 23:41
你所求的m为字符串的字节数,数字,字母为一个字节,汉字为两个字节,则为15;n为你所求字符串的长度。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2