60.指针数组和数组指针

一.指针数组

指针数组是一个数组,在指针数组中存放的是指针变量。

定义一个指针数组p

int *p[5];

内存模型如下:

指针数组的初始化

#include <stdio.h>

int main(void)
{
    int a=1;
    int b=2;
    int c=3;
    int i;
    int *p[3] = {&a,&b,&c};
    for(i=0;i<3;i++){
        printf("%d\n",*p[i]);
    }
    
    return 0;
 
}

运行结果:

二.数组指针

数组指针是一个指针,指向的是数组。

定义一个数组指针P:

int (*P)[5];

内存模型如下:

数组指针的初始化

#include <stdio.h>

int main(void)
{
    int a[5]={0,1,2,3,4};
    int i;
    int (*p)[5] = &a;

    for(i=0;i<5;i++){
        printf("%d\n",*(*p+i));
    }


    return 0;
 
}

运行结果:

三.如何区分

是指针数组还是数组指针看名字的最后俩个字,所以指针数组是数组,数组指针是指针。

四.视频教程

60.数组指针和指针数组_哔哩哔哩_bilibili

相关推荐
取加若则_18 分钟前
C++入门(C语言过渡)
c语言·开发语言·数据结构·c++·算法
真果粒wrdms24 分钟前
【在线词典】项目实现
linux·c语言·嵌入式硬件·算法·udp·sqlite3
YangZheng@28 分钟前
23种设计模式
c++·算法·设计模式
当年拼却醉颜红1 小时前
力扣爆刷第161天之TOP100五连刷71-75(搜索二叉树、二维矩阵、路径总和)
算法·leetcode·矩阵
cjay_fighting1 小时前
Sentinel
算法·sentinel
yava_free1 小时前
详解Java垃圾回收(GC)机制
java·jvm·算法
wlwhonest2 小时前
最短路算法——差分约束
算法
中草药z2 小时前
【Java算法】二分查找 上
数据结构·笔记·算法·leetcode·二分查找·学习方法
破晓的历程2 小时前
【机器学习】机器学习的重要方法——线性回归算法深度探索与未来展望
算法·机器学习·线性回归
c沫栀2 小时前
C - Sierpinski carpet(abc357)
c语言·c++·算法