两种声明方式
int* p = new int;
*p = 1000;
int a = 1000;
int* p = &a;
数组名和指针的区别
-
指针的值可以修改,数组名是常量。
pointerName = pointerName + 1; //valid arrayName = arrayName + 1; //not allowed
-
sizeof(arrayName)为数组的长度,sizeof(pointerName)为指针的长度。
-
arrayName为指向数组第一个元素的指针,&arrayName为只想数组的指针。两个指针指向的内存是一样的,但指向的内存块大小不同。