上概念:
1) C++中指针亦是一个变量,他指向一个内存地址,如果一定要说它是个类型的话, 它和整数unsigned int类型一样,是4字节(32bit-system)变量。比如:
int *a= (int*)12300;
a变量里的存放的就是12300,它代表的意思是:指向内存地址为12300的内存块,这个内存块存放的是int型变量。
a本身也存放在内存中,a的地址为另外一个数字,在console下可以用cout<<&a<<endl;输出看看。
2)使用new,一旦分配成功,即将指针初始化,那么该指针就可以当作数组来用了。
如下:
int * a=new int[2];
我们甚至可以用 a[1000]=12;来设定内存的值。
这样做是合法的,但却是不安全的。