指针高级(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;
}
相关推荐
Juan_20124 分钟前
P1041题解
c++·算法·题解·搜索
泡沫冰@31 分钟前
数据库(6)
数据结构
晨非辰1 小时前
【数据结构入坑指南】--《层序分明:堆的实现、排序与TOP-K问题一站式攻克(源码实战)》
c语言·开发语言·数据结构·算法·面试
hansang_IR1 小时前
【题解】P2217 [HAOI2007] 分割矩阵 [记忆化搜索]
c++·数学·算法·记忆化搜索·深搜
Voyager_43 小时前
算法学习记录03——二叉树学习笔记:从两道题看透后序位置的关键作用
笔记·学习·算法
我搞slam8 小时前
快乐数--leetcode
算法·leetcode·哈希算法
WWZZ20258 小时前
快速上手大模型:机器学习3(多元线性回归及梯度、向量化、正规方程)
人工智能·算法·机器学习·机器人·slam·具身感知
东方佑9 小时前
从字符串中提取重复子串的Python算法解析
windows·python·算法
西阳未落10 小时前
LeetCode——二分(进阶)
算法·leetcode·职场和发展
通信小呆呆10 小时前
以矩阵视角统一理解:外积、Kronecker 积与 Khatri–Rao 积(含MATLAB可视化)
线性代数·算法·matlab·矩阵·信号处理