码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 数组指针、二级指针传参


    void test(int **p){}//二级指针接受
    int main()
    {
        int a = 0;
        int* p = &a;
        int** pp = &p;
        int* arr[10] = { 0 };
        test(pp);//二级指针传参
        test(&p);//一级指针的地址
        test(arr);//指针数组,存放指针地址的数组
        return 0;
    }
    //void test(int arr[][5])
    //{}//arr[][] arr[3][]  错误写法  err
    //void test(int (*arr)[5])
    //{}//int *arr  int **arr int *arr[5] 错误写法,类型不兼容
    //int main()
    //{
    //
    //    int arr[3][5] = { 0 };
    //    test(arr);//二维数组传参,传的是第一行数组的地址
    //    return 0;
    //}
    //int main()
    //{
    //    int arr[5];//是一个五个元素的整型数组 
    //    int* parr[10];//是一个10个元素的int*指针数组
    //    int(*parr2)[10];//是一个指向10个int整型元素的数组指针
    //    int(*parr3[10])[5];//是一个十个数组指针,且每个指针指向五个int整型元素的数组
    //    return 0;
    //}
    //int main()
    //{
    //    int arr[10] = { 1,2,3,4,5,6,7,8,9,0 };
    //    int i = 0;
    //    int* p = arr;
    //    for (i = 0; i < 10; i++)
    //    {
    //        printf("%d ", arr[i]);
    //        printf("%d ", *(p + i));
    //        printf("%d ", *(arr+i));
    //        printf("%d ", p[i]);
    //
    //        //arr[1] == *(arr+i) == *(p+i) == p[i]
    //    }
    //    return 0;
    //}
    //void print1(int arr[][5], int x, int y)
    //{
    //    int i, j = 0;
    //    for (i = 0; i < x; i++)
    //    {
    //        for (j = 0; j < y; j++)
    //        {
    //            printf("%d ", arr[i][j]);
    //        }
    //        printf("\n");
    //    }
    //}
    //void print2(int(*p)[5], int x, int y)
    //{
    //    int i = 0;
    //    for (i = 0; i < x; i++)//行
    //    {
    //        int j = 0;//列
    //        for (j = 0; j < y; j++)
    //        {
    //            //printf("%d ", *(*(p + i) + j));
    //                //*(p+i) 表示第几行,
    //                //(*(p+i)+j)表示第i行第j列的元素
    //                //*解引用
    //            //printf("%d ", *(p + i)[j]);
    //            printf("%d ", p[i][j]);
    //
    //        }
    //        printf("\n");
    //    }

  • 相关阅读:
    使用new/delete动态管理内存【C/C++内存分布】
    nodejs+vue智能招聘系统elementui
    java中多线程去跑海量数据使用线程池批量ThreadPoolExecutor处理的方式和使用Fork/Join框架的方式那种效率高?
    超融合和虚拟化的区别
    springboot+vue+mybatis酒店房间管理系统+PPT+论文+讲解+售后
    【leetcode】【2022/9/6】828. 统计子串中的唯一字符
    web批量导入(包括文本和图片)
    spring中事件的使用方法
    HTML中的单位rem和em有什么区别?
    蜣螂优化(DBO)求解置换流水车间调度问题(PFSP)
  • 原文地址:https://blog.csdn.net/zrk8008/article/details/130900169
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号