C++ 指针 引用 数组 详解

来源:互联网 发布:开机client mac addr 编辑:程序博客网 时间:2024/05/21 17:08

指针:

int *a; 表示a首先是个指针,该指针指向的变量类型为int

int (*a)[3] ; 表示a是指针,指向的是一个数组,数组里的元素类型为int

int **a; 表示a是指针,该指针指向另一指针,另一指针指向的是一个变量,改变量的类型为int;

int *a[3]; 表示a是一个含有三个元素的数组,数组的元素类型为int类型的指针;

数组:

int a[3];a其实是个指针它指向的是一块内存区域,该区域内放下三个int类型的值

例如 int a[3] = {1,4,3};

cout<<*a<<endl;

结果为1;

cout<<*(a+1)<<endl;

结果为4;

int a[2][3]; a是个二维数组变量,但其实a也是一个指针,只是和一维数组的指针不一样,一维数组的指针指向的是int类型的变量,而二维数组的指针指向的是一个数组;

例如 int a[2][3] = {{1,2,3},{4,5,6}}; a指向的是一个数组该数组含有三个int类型的元素;

即 int (*p)[3] = a;

cout<<*a[0]<<endl;//相当于a[0][0]

cout<<*a[1]<<endl;//相当于a[1][0]

结果为:1 

                 4

引用:

char *a = "123344";

char* &b = a;//表示b首先是个引用,接着该引用 引向的是char指针类型的变量,即b引用的的是一个指针该指针指向一个char类型 所以a可以赋值给b;


char c= 'c ';

char &b://表示b是个引用,引用的是一个char类型的变量

b = c;



原创粉丝点击