指针高级(3)

11.利用指针遍历第二种

不同:

第一种格式,因为是一起定义的,所以所有的数据在内存当中,都是连续的,且二维数组里面存的东西,完全不同

第一种格式,真的是把一维数组那个整体给放进来了,第二种格式当中,一维数组在外面,是把一维数组数组的指针放到了二维数组中,说白了,二维数组里面存的不是数据,仅仅是2个内存而已

代码

复制代码
#include<stdio.h>
int main()
{
        //1.定义3个一维数组
        int arr1[5] = { 1,2,3,4,5 };
        int arr2[5] = { 11,22,33,44,55 };
        int arr3[5] = { 111,222,333,444,555 };

        //2.把3个一维数组的内存地址,再放入这个二维数组当中
        int* arr[3] = { arr1,arr2,arr3 };

        //3.获取指针
        int** p = arr;

        //4.遍历数组
        for (int i = 0; i < 3; i++)
        {
                for (int j = 0; j < 5; j++)
                {
                        printf("%d ", *(*p +j));
                }
                //换行
                printf("\n");
                //移动指针
                p++;
        }




        return 0;




}

12.数组指针和指针数组

13.函数指针

复制代码
#include <stdio.h>

void method1();
int method2(int num1, int num2);

int main()
{
        //定义指针指向2个函数
        void (*p1)() = method1;
        int (*p2)(int,int) = method2;

        //2.利用函数指针去调用函数
        p1();
        int num = p2(10, 20);
        printf("%d\n", num);

        return 0;



}

void method1()
{
        printf("method1\n");
}

int method2(int num1, int num2)
{
        printf("method2\n");
        return num1 + num2;
}
相关推荐
程序员清洒3 分钟前
CANN模型剪枝:从敏感度感知到硬件稀疏加速的全链路压缩实战
算法·机器学习·剪枝
vortex517 分钟前
几种 dump hash 方式对比分析
算法·哈希算法
堕27432 分钟前
java数据结构当中的《排序》(一 )
java·数据结构·排序算法
2302_813806221 小时前
【嵌入式修炼:数据结构篇】——数据结构总结
数据结构
Wei&Yan1 小时前
数据结构——顺序表(静/动态代码实现)
数据结构·c++·算法·visual studio code
团子的二进制世界2 小时前
G1垃圾收集器是如何工作的?
java·jvm·算法
吃杠碰小鸡2 小时前
高中数学-数列-导数证明
前端·数学·算法
故事不长丨2 小时前
C#线程同步:lock、Monitor、Mutex原理+用法+实战全解析
开发语言·算法·c#
long3162 小时前
Aho-Corasick 模式搜索算法
java·数据结构·spring boot·后端·算法·排序算法
近津薪荼2 小时前
dfs专题4——二叉树的深搜(验证二叉搜索树)
c++·学习·算法·深度优先