曾经写过一篇《多级指针和链表》中描述了数组和链表其实是一回事,数组只是链表的一种链表具有一般性,数组仅仅是一种优化。字符串类型其实是字符数组的一种优化。实际上,数组也好,字符串也好,在语言的语义上都不应该存在,链表可以表示他们,数组只是链表的一种特殊情况,所有元素所在内存相邻而已,字符串又是一种数组,因此它也是一种链表。事实上,在编程语言的层次上,语言的语义并不明白内存的布局,因此设计数组这种数据结构本身就是不合理的。
最近在地铁上,看了《黑客和画家》这本书,证实了上面的观点,因此...