首先第一点,非常重要的一点:指针和数组是不同的两个类型!
我们从可以从C语言标准文档中得知:
ISO/IEC 9899:1999 - programing language c
6.2.5 Types
20 .
这说明了什么是数组类型
同样在20 .
说明了什么是指针类型。
在了解了两种类型的基础上,我们了解数组和指针的区别:
数组是一组相同类型对象的集合,指针是对一个对象的引用。
它们在使用中表现出了一定的相同点,但不同点也是很多的:
1,数组直接储存对象,指针则是指向一个对象。
2,数组名不能被赋值,指针变量能。
3,sizeof一个数组,得到数组的长度(字节单位),sizeof一个指针,相当于sizeof(void*)。(注意,不同目标平台指针长度可能不同,所以sizeof(void*)是最准确的回答)
4,(可能是考试内容,对于正确性就呵呵)指针是间接访问,数组是直接访问。
如果你对C语言有深入学习的想法,务必去了解一下C语言的ISO标准。