vb string类型变量在内存的表示?
可爱的小莱 2010-03-05 10:47:19 vb string类型变量在内存的表示?
1
一般来说,vb字符串都使用UNICODE表示,不管汉字还是英文字符都应该是两个字节。
eg.一个字符串在内存中,占的字节数应该是 总内存=字符个数*2字节
2
内存分布应该是汉字两个字节,英文一个字节
eg.
dim string*10
“我123456789”
内存分布应该是:
内存单元 0 1 2 3 4 5 6 7 8 9
-50 -17 0 50 0 51 0 52 0 53
? ? 2 3 4 5
实际上内存分布是以下样式:
-50 -17 50 51 52 53 54 55 56 57
以字符显示:? ? 2 3 4 5 6 7 8 9
为什么会这样呢?