最佳答案
点(.
)操作符用于访问结构体的成员,而C语言中的箭头操作符(->
)用于访问由相关指针引用的结构体成员。
指针本身没有任何可以用点操作符访问的成员(它实际上只是一个描述虚拟内存中某个位置的数字,所以它没有任何成员)。因此,如果我们只是定义点操作符来自动解除对指针的引用(编译器在编译时知道的信息),就不会有歧义。
那么,为什么语言的创造者决定通过添加这个看似不必要的操作符来使事情变得更复杂呢?大的设计决策是什么?