其他分享
首页 > 其他分享> > 指针

指针

作者:互联网

1.什么是指针:

指针是一个存储计算机内存地址的变量,即指针变量里面存放的是内存地址。

 

2.操作符:*和&

操作符*根据出现的位置不同,既可以用来声明一个指针变量,也可以用作指针的取值。当用在声明一个变量时,*表示这里声明了一个指针。其它情况用到*表示指针的取值。

&是地址操作符,用来引用一个内存地址。通过在变量名字前使用&操作符,我们可以得到该变量的内存地址。

 

3.指针的类型:

1)基本类型:int 、short、long、float 、double、char
如 int *p;//表示定义一个指针,这个指针指向整形变量,这个指针将存放的是整形变量的地址。

2)数组指针:指针指向一个数组
int (*a)[10];//表示指针指向一个int型的长度为10的数组。

3)函数指针:指针指向一个函数

void (*a)();//表示指针指向一个无参数无返回值的函数。

 

4.指针赋值:
赋值方式有两种
1)定义时赋初值:int a; int *p=&a

2)先定义,后赋初值:int a; int *p; p=&a

 

5.指针和数组的关系:

指针和数组关系密切,数组可以通过指针去引用,数组可以存放指针,数组也可以由指针去访问,指针也能存放数组的地址。

 

6.字符串与指针:

一个字符串常量不可以直接赋给一个数组,比如:char s[10]; s="hello";这种写法是错误的。

但是一个字符串却可以直接赋给一个指针:char *p; p="hello";这仅限于将一个字符串常量的地址赋给指针p,

但如果char s[10]; char *p=s; *p="hello";这就是非法的,这就相当于直接把字符串常量赋给一个数组,其实字符串常量赋给一个数组可以采用strcpy()函数。

 

标签:变量,int,char,数组,赋给,指针
来源: https://www.cnblogs.com/jimeirj/p/15582500.html