C语言中的指针为什么要区别出指向不同数据类型的指针

如题所述

设p是个指针,用*p读取它指向的目标:
当p是char *型时,只从p所具有的地址开始读取1个字节;
当p是int *型时,要从p所具有的地址开始连续读取4个字节;
当p是double *型时,就得从p所具有的地址开始连续读取8个字节;
……
看看,都是*p,若不区分“不同数据类型”编译器怎能知道该读取几个字节?当然区分的原因还远不止这些……
温馨提示:答案为网友推荐,仅供参考
相似回答