c++中使用new来动态分配内存,使用delete释放内存。
如 int *a = new int;
delete a;
或者 int* a = new int(10);
Delete[] a;
但要注意的是,delete一个指针后,该指针并没有指向NULL。
空指针是指void类型的指针,该指针可以看作面向对象里面的抽象类,任何指针类型都可以直接转换为void* 类型。但在实际使用过程中,void* 类型的使用很少。它的用处有:
- 进行纯粹的内存操作时,如 void* memcpy(void *addr1,void *addr2,size_t n); 该函数只进行内存拷贝。
- 传递一个指向未定类型的指针;
- 直接通过内存地址操作特定的内存。
如:unsigned int *p = (unsigned int *)0XFF00FF00;
*p = 11;