C 语言指针核心知识点梳理
C语言指针知识点总结目录一、指针功能二、基础概念1. 地址2. 指针3. 指针变量三、指针两大运算符1. 取地址运算符2. * 取值解引用运算符四、指针变量定义野指针空指针指针类型含义五、指针两种操作含义六、指针算术运算七、函数参数值传递与地址传递1. 值传递2. 地址传递指针传参八、一维数组与指针关系数组名特性一维数组作为函数形参的写法三种等价形式一、指针功能让程序代码更加简洁高效能够直接访问内存空间二、基础概念1. 地址计算机为区分内存中不同存储空间对内存进行编号存储空间对应的编号就是地址。内存按照字节进行编址。寻址范围0x0000000000000000 ~ 0xFFFFFFFFFFFFFFFF2. 指针指针本质上可以理解为地址指针带有类型属性类型决定了它指向空间占用字节大小。3. 指针变量专门用来存放指针地址的变量称为指针变量日常也会直接简称为指针。三、指针两大运算符1. 取地址运算符仅左值支持操作常量、表达式等右值无法进行取地址。变量运算结果该变量在内存中存储空间的首地址。类型转换规则类型升级例如int→int *。示例intnum0;num;// 获取变量num内存首地址2. * 取值解引用运算符只有指针类型的数据可以执行*操作普通变量不能直接解引用。*指针运算结果从指针保存的首地址开始读取对应类型长度的数据。类型转换规则类型降级例如int *→int。若*指针放在等号左侧充当左值代表向指针指向的内存空间写入数据。四、指针变量定义语法格式数据类型 *变量名;int*p;char*p;float*p;double*p;int*p,*q;在64位系统中所有指针变量统一占用8字节和指针指向的数据类型无关。野指针未经初始化、或者指向已经被释放内存空间的指针。规范禁止使用未初始化的野指针。空指针指向内存地址0x0位置的指针使用NULL表示。int*pNULL;0x0地址对应的内存空间为只读禁止对空指针解引用*p否则程序直接崩溃。指针类型含义指针的数据类型决定指针指向何种类型内存空间int *p指向int类型空间char *p指向char类型空间float *p指向float类型空间double *p指向double类型空间五、指针两种操作含义假设有指针变量pp代表操作指针变量本身修改它可以改变指针指向的地址。*p代表操作指针指向的内存空间修改它只会修改地址内存储的值不会改变指针指向。示例区分inta100;intb200;int*pa;int*qb;pb;// 修改指针p本身p指向变量bpq;// 修改指针p本身让p和q指向同一空间*pb;// 修改p指向空间内的数据指针指向不变*p*q;// 修改p指向空间内的数据指针指向不变六、指针算术运算支持、-、、--p向内存高地址偏移偏移长度 指针指向数据类型的字节大小p--向内存低地址偏移偏移长度 指针指向数据类型的字节大小*p等价于*p , p先取值再移动指针两个同类型指针可以相减计算得到两个地址之间相隔多少个对应类型元素。注意指针不支持相加运算七、函数参数值传递与地址传递1. 值传递实参将数值副本传递给形参形参发生修改不会影响外部实参。适用场景函数只需要读取外部变量数值不需要修改变量。2. 地址传递指针传参实参把变量地址传递给指针形参函数内通过解引用可以直接修改外部实参的值。适用场景函数内部需要修改函数外部变量借助地址传递实现一个函数返回多个结果八、一维数组与指针关系inta[5]{1,2,3,4,5};int*pNULL;pa[0];pa;// 数组名a等价于数组首元素地址等价关系a[n] *(an) *(pn) p[n]数组名特性数组名是指向数组首元素的指针常量不能被直接赋值修改。绝大多数场景数组名可看作对应类型指针如int数组名看作int *两种例外sizeof(数组名)此时数组名代表整个数组不视作指针数组名取出整个数组的地址不视作普通元素指针C语言中[]本质是指针语法糖p[n]等价于*(pn)。一维数组作为函数形参的写法三种等价形式intfun(intarray[],intlen);intfun(intarray[5]);intfun(int*parray,intlen);数组传入函数后会隐式转化为指针函数内部无法通过sizeof获取数组总大小必须额外传入数组长度。

相关新闻

雷克萨斯RC F深度解析:V8自吸发动机的坚守与驾驶体验

雷克萨斯RC F深度解析:V8自吸发动机的坚守与驾驶体验

如果你是一位汽车爱好者,或者对高性能日系跑车有所关注,那么“东瀛大V8”这个名号你一定不陌生。它特指那些搭载了V8发动机、性能强悍的日本高性能车型。而雷克萨斯RC F,正是这一阵营中极具代表性,却又常常被市场低估的一款“西装…

2026/8/1 4:46:34 阅读更多 →
Nvidia、Meta、Microsoft为何力挺开放模型?深度解析三大科技巨头的开源AI战略

Nvidia、Meta、Microsoft为何力挺开放模型?深度解析三大科技巨头的开源AI战略

开源浪潮下的AI格局重塑2024年以来,全球AI产业呈现出前所未有的开放态势。Nvidia、Meta、Microsoft三大科技巨头纷纷加大对开源模型的支持力度,这一战略转向背后蕴含着深刻的商业考量与技术逻辑。开源模型不仅改变了AI技术的分发方式,更重塑了…

2026/8/1 4:46:34 阅读更多 →
LangSmith Polly:实现LLM应用本地化可观测性的关键技术解析

LangSmith Polly:实现LLM应用本地化可观测性的关键技术解析

1. 从LangSmith的“私有化”到Polly的“无处不在”:一次关键的技术范式转移如果你在过去一年里深度参与过LLM应用开发,那么LangSmith这个名字对你来说一定不陌生。它几乎是LangChain生态中事实上的“黄金标准”调试与监控平台。然而,一个长期…

2026/8/1 4:45:34 阅读更多 →

最新新闻

科研诚信:从学术规范到实践指南,构建可信研究全流程

科研诚信:从学术规范到实践指南,构建可信研究全流程

1. 项目概述:为什么“科研诚信”在今天比以往任何时候都更重要如果你是一名研究生、青年学者,或者是在企业研发部门工作的工程师,你可能已经无数次听到“科研诚信”和“学术规范”这两个词。它们常常出现在开学第一课、项目启动会或者论文投稿…

2026/8/1 5:26:49 阅读更多 →
BI选型不该只看功能清单:产品VP拆解智能BI的12项评估维度

BI选型不该只看功能清单:产品VP拆解智能BI的12项评估维度

导语 根据艾瑞咨询《2025年中国BI市场报告》统计,当前国内企业BI项目的实际落地成功比例不足30%——这个结论和很多企业选型时的预期完全相反:不少团队选型时花几周时间拉满几十上百项功能清单,挨个核对打勾,确认所有需求都被覆盖…

2026/8/1 5:26:49 阅读更多 →
虚拟机工具下载:合集(支持一键root,虚拟定位功能)

虚拟机工具下载:合集(支持一键root,虚拟定位功能)

软件兼容性 已适配最新的安卓16系统,同时向下兼容安卓4至安卓11等多个旧版本。不同安卓版本在首次启动时的激活流程有所区别,安卓12及以上系统需要先完成激活步骤,安卓12以下版本通常可直接进入虚拟机创建界面。 下载链接:虚拟机…

2026/8/1 5:26:49 阅读更多 →
Burp Suite Pro 2024.3.2 稳定激活指南:基于Java Agent的纯净安装与JDK环境配置详解

Burp Suite Pro 2024.3.2 稳定激活指南:基于Java Agent的纯净安装与JDK环境配置详解

1. 项目概述:为什么我们需要一个“干净”的Burp Suite Pro?如果你是一名Web安全测试人员、渗透测试工程师,或者正在学习网络安全,那么Burp Suite这个名字对你来说一定如雷贯耳。它几乎是这个领域的“瑞士军刀”,从基础…

2026/8/1 5:26:49 阅读更多 →
Codex框架环境配置全攻略:从依赖冲突到生产部署

Codex框架环境配置全攻略:从依赖冲突到生产部署

那天下午,团队里刚来的实习生跑来问我:“这个 Codex 项目,我照着教程装了两天,不是依赖报错就是端口被占,能不能直接给我个能跑起来的 Docker 镜像?”我看着他电脑上开了十几个终端窗口,每个都在…

2026/8/1 5:26:49 阅读更多 →
FFmpeg音视频解码实战:软解、CUDA与QSV硬解方案对比与性能优化

FFmpeg音视频解码实战:软解、CUDA与QSV硬解方案对比与性能优化

1. 项目概述:解码方案的选择与权衡在音视频处理领域,解码是几乎所有应用的第一步。无论是播放器、转码工具还是流媒体服务器,都需要将封装格式中的压缩视频流(如H.264、HEVC)还原成原始的像素数据。FFmpeg作为这个领域…

2026/8/1 5:25:49 阅读更多 →

日新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/31 1:03:03 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/8/1 5:19:34 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/31 4:19:39 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →