千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

首页 视频教程 培训课程 师资团队 技术干货 常见问题 面试题 职场就业 零基础学c语言 行业资讯
【热点话题】 c语言技术干货 c语言学习教程 c语言学习笔记 c语言面试题 c语言培训问答 c语言培训机构哪些好 c语言职场就业
当前位置:c语言培训  >  c语言面试题  >  C语言数组指针和指针数组区别

C语言数组指针和指针数组区别

来源:千锋教育
发布人:zyh
时间: 2023-05-31 11:41:00

  在C语言中,数组指针和指针数组是两个不同的概念。

C语言数组指针和指针数组区别

  数组指针(Pointer to an Array):数组指针是指向数组的指针变量。它存储的是数组的首地址,而不是数组的元素地址。通过数组指针,可以访问整个数组。声明数组指针时,需要指定数组的类型和大小 

int (*ptr)[5];  // 声明一个指向包含5个整型元素的数组的指针

int arr[5] = {1, 2, 3, 4, 5};
ptr = &arr; // 将数组的地址赋给指针变量

  在上述示例中,ptr是一个指向包含5个整型元素的数组的指针。通过ptr可以访问整个数组。

  指针数组(Array of Pointers):指针数组是一个数组,其中的每个元素都是指针。每个指针可以指向不同的数据类型,也可以指向相同的数据类型。指针数组的元素是独立的指针变量,它们存储了各自指向的数据的地址。 

int *arrPtr[5];  // 声明一个包含5个整型指针的数组

int num1 = 1, num2 = 2, num3 = 3, num4 = 4, num5 = 5;
arrPtr[0] = &num1;
arrPtr[1] = &num2;
arrPtr[2] = &num3;
arrPtr[3] = &num4;
arrPtr[4] = &num5;

  在上述示例中,arrPtr是一个包含5个整型指针的数组。通过arrPtr的各个元素,可以存储不同整型变量的地址。

  综上所述,数组指针是指向数组的指针变量,用于访问整个数组;而指针数组是一个数组,其中的每个元素都是指针变量,用于存储不同变量的地址。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

最新文章NEW

相关推荐HOT

更多>>