C语言----指针和数组(1)

来源:互联网 发布:slack windows 下载 编辑:程序博客网 时间:2024/06/10 10:04

1、指针变量的定义:

 类型名    *指针变量名;----------------如:int *p1,*p2;

类型是指指针变量所指的地址上存储内容的类型,因存储数据的不同占用存储空间是不同的,“*”前有类型定义符时,“*”含义是定义指针;

2、指针变量的赋值:

一个指针变量可以通过赋值、初始化、分配内存空间来获得一个确定的地址值,从而指定一个具体的对象。

如 int k=1,*q,*p;

  q=&k;            指针q指向变量k的地址;

  p=q;              指针p指向指针q所指的地址,指针p和q都指向了变量k;

当进行赋值运算时,赋值号两边指针变量的基类型必须相同;

3 、指针变量的间接寻址运算。

从指针变量所指的地址上去内容可用运算符“*”,“*”成为间接寻址运算符,其操作数是一个指针变量。

                      寻址形式为:*指针;功能是:获取指针所指存储单元的值。

4、数组与指针

 一位数组和指针:

int a[10],*p;

p=a+5;   *a,a[10]表示数组元素;p、a+5表示指针地址;

二维数组和指针:

类型说明符  (*指针变量名)[下标];

int a[3][4],(*p)[4];

p=a;           *(p[i]+j),*(*(p+i)+j)表示数组元素a[i][j],同理,*(p+i)为数组a的第i行首地址,*(p+i)+j表示数组i行j列元素地址。

5、指针数组

指针数组指指针作为数组元素构成的数组。

类型说明符  *数组名[下标]

int *a[4];

它表示一个数组,此数组的元素由指针组成,指针数组具有数组的所有性质,使用指针数组使字符串的处理更为灵活方便。

原创粉丝点击