C# String随笔
已经知道String内部还是以\0为结束符的
做了个简单的测试
StringBuilder a = "a";
byte[] test1 = Encoding.ASCII.GetBytes(a.ToString());
test1数组里就一个对象,且值 = 'a';
a.Append('\0');
byte[] test2 = Encoding.ASCII.GetBytes(a.ToString());
test2数组里有2个对象, {'a', '\0'}
a.Append('\0');
byte[] test3 = Encoding.ASCII.GetBytes(a.ToString());
test3数组里有3个对象, {'a', '\0','\0'}
且此时在VS的WATCH里调用 a.ToString(), 显示的是"a\0\0",而如果是调试时把鼠标放到代码窗口里看到的则是"a"
浙公网安备 33010602011771号