c++ 指针篇

指针的主意事项:

指针的声明:

  1. 数组指针的声明:一维数组当函数形参的声明有两种:

 1 void view(int *a); 2 void view(int a[]);//二者等价 数组

二维数组当函数形参的声明有三种:函数

void view(int (*a)[5]);
//这里不是*a[5],由于要声明5个指针而不是一个指向4个int的指针
void view(int a[][5]);
//二维数组声明时必定要把二维数组的列数代表,其行数能够变化
//int **a不是定义的二维数组,而是指向指针的指针

2.指针的初始化:通常状况下将数组的数组名,将变量的地址赋给指针就能够,这样获得的数组将是一个静态的数组,其数组的大小在定义时就肯定了,并且是定义在栈的内存区域。咱们能够经过另外一种new的方法,主动的在堆中申请内存地址,并把地址返回给指针,其操做以下:spa

 1 //用new来申请变量地址
 2 int*p=new int;
 3 ...
 4 delete p;
 5 //用new来申请数组地址
 6 int *ps=new int [10];
 7 ...
 8 delete [] ps;//记得必定要加上[]
 9 //二维数组也能够
10 int(*b)[2]=new int[10][2];//new还能够用于结构体,类等其余的数据类型
相关文章
相关标签/搜索