1. 指针保存数据地址, 数组保存数据
2.指针间接访问数据,首先取得指针的内容,把它作为地址,然后从这个地址提取数据。如果指针有一个下标【i】,就把指针内容加上i作为地址,从中提取数据
数组直接访问数据,a【i】只是简单地a+i为地址取得的数据
3.指针通常用于用于动态数据结构,数组用于存储固定数目且数据类型相同的元素,
4.指针相关函数为malloc() free(),数组是隐式分配和删除
5.指针通常指向匿名数据,数组自身即为数据名
6.定义指针并不为指针所指向对象分配空间,只分配对象本身的空间。除非在定义时同时赋值给一个字符常量进行初始化。
例 char * p = "hello,world"; 为其分配内存,字符串常量不可修改
float *平p = 3.14 //错误变异无法通过
对数组,char a【】 = "hello,world"; //数组值可以被修改