news 2026/5/23 1:29:35

自学嵌入式第六天

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
自学嵌入式第六天

函数指针的小应用

有两个整数a和b,由用户输人1,2或3。如输入1,程序就给出a和b中大者,输人2,就给出a和b中小者,输人3,则求a与b之和

首先封装三个取值函数

定义一个函数指针,通过switch语句选择1,2,3指向不同的函数(类型相同)。

回调函数的封装

此过程中,主函数传的是函数的地址,需要解引用拿到函数本身再进行调用。

指针数组

数组指针 是一个指针int (*p)[4];这是一个指向一位数组的指针变量

而指针数组是一个数组,里面存放的都是指针

注意区分int * p[4];每一项都是一个指针变量

函数指针数组

指针函数 返回指针值的函数叫指针函数

例:int* getsss(int a, int (*p)[3])

{

int *p; p =......

return p;

}这个函数的返回值类型为指针类型

二级指针

int data = 10;

int *p;

p = &a;

int *p1;

p1 = &p;

这种情况*p1不能取到data的值,只能取到p的值,也就是只能取到data的地址。

要想取到data引入二级指针

int **p2;

p2 = &p;

*p2 = p;(data的地址)

**p2 = data;

二维指针的应用

当你通过函数调用来修改调用函数指针指向的时候,就像通过函数调用修改某变量的值的时候一样

此时传的是指针变量的地址

传 &ppos,我们要在 getPosPerson 函数里,给 main 里的 ppos 指针赋值,让它指向指定学生的成绩数组

此时拿到的是 ppos 变量的地址,通过解引用 *ppos,就能直接修改 main 里原指针的值

pstu是行指针,pstu+pos 指向第 pos 行的首地址

注意:二级指针和二维数组别相当然想成一样的,那不对!!!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/22 22:33:54

宿主机与虚拟机网络配置打通

Kali 虚拟机网络配置笔记 一、基础网络模式 1. 桥接模式 (Bridged) 目的:让虚拟机加入物理局域网配置: 选择物理网卡(非VMnet1/VMnet8)启用"复制物理网络连接状态"(推荐笔记本用户) 结果&#xf…

作者头像 李华
网站建设 2026/5/23 1:32:42

AI+XR老年康复智慧实训室,让学生在智慧实训中练就真本领

在“新双高”建设深入推进、人工智能技术加速赋能职业教育的时代背景下,国家推出一系列政策,明确提出“深化人工智能、虚拟仿真数字技术与职业教育深度融合”“构建产教融合人才生态”的要求。恒点推出AIXR老年康复智慧实训教学系统,响应战略…

作者头像 李华
网站建设 2026/5/23 1:29:39

python数据分析实战案例

一、项目整体设计思想本项目围绕班级学生信息分析与微信好友数据分析两个核心案例,采用「数据读取→数据清洗→多维度分析→可视化呈现→结论洞察」的全流程设计,核心技术栈为: Python pandas pyecharts snownlp wordcloud 腾讯云AI &am…

作者头像 李华
网站建设 2026/5/23 1:30:38

I2C土壤湿度传感器Arduino驱动库详解

1. 项目概述 I2CSoilMoistureSensor 是一款专为 Catnip Electronics(现由 Miceuz 主导开发)推出的 IC 接口土壤湿度传感器设计的轻量级 Arduino 库。该传感器硬件基于 Chirp 系列设计(开源地址:https://github.com/Miceuz/i2c-moi…

作者头像 李华
网站建设 2026/5/23 1:29:42

MultiButton嵌入式按钮事件处理库详解

1. 项目概述MultiButton 是一个轻量、可靠、可移植的嵌入式按钮事件处理库,专为资源受限的微控制器平台(如 Arduino、STM32duino)设计。其核心目标并非简单读取 GPIO 电平,而是将原始、易受干扰的物理输入信号,转化为语…

作者头像 李华