多语言展示
当前在线:122今日阅读:23今日分享:25

教你如何区别指针数组和指针数组

数组指针是指向数组首元素的地址的指针,其本质为指针(这个指针存放的是数组首地址的地址,相当于2级指针,这个指针不可移动);指针数组是数组元素为指针的数组,其本质为数组。数组指针只是一个指针变量,是C 语言里专门用来指向二维数组的,它占有内存中一个指针的存储空间。指针数组是多个指针变量,以数组形式存在内存当中,占有多个指针的存储空间.
工具/原料
1

笔记本电脑

2

运行系统windows10

3

编程软件哈啊c

方法/步骤
1

打开啊哈c编译器

2

int a[3] = {1,2,3};//数组的指针,强调的是类型,数组的个数,偏移值是偏移了整个数组的大小

3

int (*p)[3];    p = a;//数组指针

4

int *p2; p2 = a;//指针数组

5

printf('数组的地址是%p\n',a);    printf('数组的地址是%p\n',&a[0]);    printf('数组的地址是%p\n',p);    printf('数组的地址是%p\n',p2);

6

printf('==============区别来咯==============\n');        printf('p++的结果是:%p\n',++p);        printf('p2++的结果是:%p\n',++p2);

7

运行程序

注意事项
1

指针数组可以作为函数的参量使用,使用方式与普通数组类似。 指针数组常适用于指向若干字符串,这样使字符串处理更加灵活方便。

2

本程序采用哈啊c编写,由于软件本身有bug,在重新编译运行时,要先把之前的运行窗口先关掉,不然会报错。

3

数组指针和指针数组在处理同一个二维数组时,数组指针的元素个数和指针数组的数组长度不相同,数组指针的元素个数和二维数组的列长度相同。 而指针数组的数组长度和二维数组的行长度相同。

推荐信息