Z
zhihuali
Unregistered / Unconfirmed
GUEST, unregistred user!
结果是 'Hello' 完全正确。
简单说是因为资源分配和字符串结束符号以及’+‘的运算符问题。
强烈建议不明白的去看看清华大学 95 年左右出的一本 PASCAL 编程的
入门书籍,里面关于这个说的很详细。我是心里明白,不过说不出来。
郁闷
一开始 s1 = 'hello';分配了5个字符资源。
s2和s3='',没有分配资源。
s1=s2+s3,因为S2,S3相当于没有任何东西。自然S1还是’Hello‘。(因为没有字符串结束符号)
如果是s1=s2+s3+#0就不同了,相当于S1='#0ello',这个时候S1显示出来就是'';
如果该为 s2,s3= ' '//1个空格
s1=s2+s3,s1=' '了。//2个空格
说得一塌糊涂。具体可以去看看PASCAL语言。
简单说是因为资源分配和字符串结束符号以及’+‘的运算符问题。
强烈建议不明白的去看看清华大学 95 年左右出的一本 PASCAL 编程的
入门书籍,里面关于这个说的很详细。我是心里明白,不过说不出来。
郁闷
一开始 s1 = 'hello';分配了5个字符资源。
s2和s3='',没有分配资源。
s1=s2+s3,因为S2,S3相当于没有任何东西。自然S1还是’Hello‘。(因为没有字符串结束符号)
如果是s1=s2+s3+#0就不同了,相当于S1='#0ello',这个时候S1显示出来就是'';
如果该为 s2,s3= ' '//1个空格
s1=s2+s3,s1=' '了。//2个空格
说得一塌糊涂。具体可以去看看PASCAL语言。