当前位置: 首页 > news >正文

c语言中,数组指针、指针数组、函数指针、指针函数

数组指针

直接理解为指向数组的指针,一般用于二位数组引用程序,形式如下
在这里插入图片描述
下面程序中用在二维数组中,把这个数组指针看作二维数组的第一维的指向:
在这里插入图片描述
用在一维数组中(本质还是二维数组)如下,类似指向这样的数组
在这里插入图片描述

在这里插入图片描述

指针数组

内部元素是指针的数组下面程序截取
在这里插入图片描述
在这里插入图片描述

函数指针

指向函数的指针;本质是一个指针,形如下面的格式
在这里插入图片描述

指针函数

返回值是指针的函数
在这里插入图片描述

总结

在这里插入图片描述

分析记忆

可参考

整体记忆规律:先看变量名先和那个部分组成一组,决定了整个变量表示的含义;然后剩下的就是描述变量元素的性质

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

拓展猜测

根据上面的结论可以推测出下面两种数据的对象含义

包含指向函数的指针数组

在这里插入图片描述
程序来源

#include<stdio.h>
int add(int x, int y)
{return x + y;
}
int sub(int x, int y)
{return x - y;
}
int mul(int x, int y)
{return x * y;
}
int div(int x, int y)
{return x / y;
}
int main()
{int (*parr[4])(int x, int y) = { add,sub,mul,div };return 0;
}

返回指向数组的指针函数

在这里插入图片描述
下面是对应的实例代码

#include <stdio.h>int arr[5];int (*get_array())[5] {int i;for (i = 0; i < 5; i++) {arr[i] = i;}return &arr;
}int main() {int (*arr_ptr)[5] = get_array();for (int i = 0; i < 5; i++) {printf("%d ", (*arr_ptr)[i]);}return 0;
}

http://www.mrgr.cn/news/44501.html

相关文章:

  • 富格林:领悟可信经验避免暗箱
  • 【C++】二叉搜索树+变身 = 红黑树
  • Final Glory推出“荣耀勋章-神龙”,游戏市场反响激烈
  • [含文档+PPT+源码等]精品大数据项目-基于python爬虫实现的大数据岗位的挖掘与分析
  • 电感七大关键参数
  • 工业缺陷检测深度学习方法
  • #Swift 递归枚举 VS Struct 实现自引用 数据结构 (链表 二叉树)
  • 蒙特卡罗方法 -引言篇
  • C++学习笔记----8、掌握类与对象(五)---- 嵌套类与类中枚举
  • 推荐系统中的协同过滤
  • 【MySQL】--数据类型
  • Spring Boot框架在医院管理中的应用
  • Docker 实践与应用举例
  • @KafkaListener注解中containerFactory属性的作用
  • Arthas match Elasticsearch
  • 深入理解 Spring Cache 的工作原理及集成其它第三方缓存
  • 手把手教你集成GraphRag.Net:打造智能图谱搜索系统
  • 大模型面试宝典:问题全集及权威解答
  • 你真的了解Elecron吗?
  • 面试官:如何实现分布式系统的限流?