指针由浅入深(6)
目录1. sizeof和strlen的对比1.1 sizeof1.2 strlen1.3 sizeof和strlen的对比2. 数组和指针笔试题解析2.1 一维数组2.2 字符数组2.3 二维数组3. 指针运算笔试题解析3.1 题目13.2 题目23.3 题目33.4 题目43.5 题目53.6 题目63.7 题目71. sizeof和strlen的对比1.1 sizeof在学习操作符的时候我们学习了sizeofsizeof 是计算变量所占内存空间大小的单位是字节如果操作数是类型的话计算的是使用类型创建的变量所占内存空间的大小。sizeof只关注占用内存空间的大小不在乎内存中存放什么数据。sizeof的返回值是size_t类型的。例如1 #inculde stdio.h 2 int main() 3 { 4 int a 10; 5 printf(%d\n, sizeof(a)); 6 printf(%d\n, sizeof a); 7 printf(%d\n, sizeof(int)); 8 9 return 0; 10 }1.2 strlenstrlen是C语言库函数功能是求字符串长度。函数原型如下1 size_t strlen ( const char * str );统计的是从 strlen 函数的参数 str 中这个地址开始向后 \0 之前字符串中字符的个数。strlen函数会⼀直向后找\0字符直到找到为止所以可能存在越界查找。且使用strlen库函数要包含头文件string.h#include stdio.h int main() { char arr1[3] {a, b, c}; char arr2[] abc; printf(%d\n, strlen(arr1)); printf(%d\n, strlen(arr2)); printf(%d\n, sizeof(arr1)); printf(%d\n, sizeof(arr2)); return 0; }1.3 sizeof和strlen的对比对比sizeofstrlen本质操作符库函数头文件不需要额外头文件需要头文件string.h作用计算变量或类型占用的内存大小计算字符串的长度统计内容统计所占内存的字节数统计 \0 之前的字符个数单位字节字符个数是否关注内容不关心内存中存放什么数据关心内存中是否会有 \0如果没有 \0 就会持续往后找可能会越界2. 数组和指针笔试题解析在做题之前我先把核心知识点整理以下题目均需用到此知识点数组名的意义1.sizeof(数组名)这里的数组名表示整个数组计算的是整个数组的大小。2.数组名这里的数组名表示整个数组取出的是整个数组的地址。3.除此之外所有的数组名都表示首元素的地址。2.1 一维数组运行结果解释2.2 字符数组代码1运行结果解释代码2运行结果解释代码3运行结果解释代码4运行结果解释代码5运行结果解释代码6运行结果解释2.3 二维数组运行结果解释3. 指针运算笔试题解析3.1 题目1运行结果解释3.2 题目2运行结果解释3.3 题目3运行结果解释首先012345是逗号表达式当没有括号时第一个表达式为整个表达式的值有括号时依次执行后最后一个表达式为整个表达式的值而且所有的表达式都依次执行了。所以数组的排列如下经过推导便可以知道答案为1。3.4 题目4运行结果解释3.5 题目5运行结果解释3.6 题目6运行结果解释3.7 题目7运行结果解释

相关新闻

ChatGPT写健身计划靠谱吗?5位NSCA认证教练联合测评:误差率<3.8%,但90%人用错了这3个提示词

ChatGPT写健身计划靠谱吗?5位NSCA认证教练联合测评:误差率<3.8%,但90%人用错了这3个提示词

更多请点击: https://codechina.net 第一章:ChatGPT写健身计划靠谱吗?5位NSCA认证教练联合测评:误差率<3.8%,但90%人用错了这3个提示词 为验证大语言模型在运动科学领域的实用性,我们邀请5位持…

2026/7/19 7:23:52阅读更多 →
Sqribble:面向AI时代的可执行文档操作系统

Sqribble:面向AI时代的可执行文档操作系统

1. 项目概述:当模板不再是“套壳”,而是一套可执行的文档操作系统你有没有过这种体验:手头有一篇写得不错的行业分析,想快速变成一份体面的PDF报告发给客户,结果打开Word或InDesign,光是调页边距、设标题样…

2026/7/19 7:21:52阅读更多 →
深入解析TI AM62L BCDMA寄存器:从性能调优到深度调试实战

深入解析TI AM62L BCDMA寄存器:从性能调优到深度调试实战

1. 项目概述与BCDMA核心价值在嵌入式系统,尤其是像TI AM62L这样的高性能异构多核处理器上,数据搬运的效率直接决定了整个系统的性能天花板。CPU固然强大,但如果让它频繁陷入到内存拷贝这类简单重复的劳动中,无疑是巨大的资源浪费。…

2026/7/19 7:21:52阅读更多 →
Cordova插件开发指南:从选型到性能优化

Cordova插件开发指南:从选型到性能优化

1. Cordova插件生态全景解析 作为移动混合开发领域的常青树,Cordova通过插件机制实现了Web技术与原生功能的完美融合。根据Apache基金会2023年的统计数据,官方插件仓库收录的插件数量已突破3000个,涵盖设备API、UI组件、第三方服务集成等各个…

2026/7/19 11:58:25阅读更多 →
计算机视觉实战:基于YOLOv5与OpenPose的智能摔倒检测系统深度解析

计算机视觉实战:基于YOLOv5与OpenPose的智能摔倒检测系统深度解析

计算机视觉实战:基于YOLOv5与OpenPose的智能摔倒检测系统深度解析 【免费下载链接】ism_person_openpose yolov5人体检测openpose姿态检测 实现摔倒检测 项目地址: https://gitcode.com/gh_mirrors/is/ism_person_openpose 在现代智能安防与健康监护领域&…

2026/7/19 11:58:25阅读更多 →
Minecraft宠物进化模组服务器架构设计与性能优化实战

Minecraft宠物进化模组服务器架构设计与性能优化实战

如果你是一名《我的世界》服务器开发者,最近发现玩家流失率异常升高,或者你正准备搭建一个宠物进化主题的服务器,那么这篇文章可能会帮你避开一些深坑。 最近不少玩家反馈,在体验"宠物进化文明"这类听起来很酷的模组时…

2026/7/19 11:58:25阅读更多 →
Windows 11优化终极指南:三分钟让你的电脑重获新生

Windows 11优化终极指南:三分钟让你的电脑重获新生

Windows 11优化终极指南:三分钟让你的电脑重获新生 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter and custo…

2026/7/19 11:58:25阅读更多 →
OpenBoardView:5分钟学会使用免费开源PCB查看器进行电路板分析

OpenBoardView:5分钟学会使用免费开源PCB查看器进行电路板分析

OpenBoardView:5分钟学会使用免费开源PCB查看器进行电路板分析 【免费下载链接】OpenBoardView View .brd files 项目地址: https://gitcode.com/gh_mirrors/op/OpenBoardView OpenBoardView是一款功能强大的免费开源PCB文件查看器,专门用于查看和…

2026/7/19 11:58:25阅读更多 →
视频分析新纪元:用AI让机器真正看懂视频内容

视频分析新纪元:用AI让机器真正看懂视频内容

视频分析新纪元:用AI让机器真正看懂视频内容 【免费下载链接】video-analyzer Analyze videos using LLMs, Computer Vision and Automatic Speech Recognition 项目地址: https://gitcode.com/gh_mirrors/vi/video-analyzer 想象一下,你手头有数…

2026/7/19 11:56:25阅读更多 →
Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/19 0:01:04阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/19 0:01:04阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/19 0:01:04阅读更多 →
Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/19 0:01:04阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/19 0:01:04阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/19 0:01:04阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/18 22:49:46阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/18 14:49:24阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/18 18:49:35阅读更多 →