C语言—深入理解指针(5)

1. sizeof 和 strlen 的对比

1.1 sizeof

在学习操作符的时候,我们学习了 sizeof,sizeof 是计算变量所占内存空间大小的单位是字节 ,如果操作数是类型 的话,计算的是使用类型创建的变量所占内存空间的大小。

sizeof 只关注占用内容空间的大小,不在乎内存中存放什么数据。

1.2 strlen

strlen 是C语言库函数,功能是求字符串长度

统计的是从 strlen 函数的参数 str 中这个地址开始向后,\0 之前字符串中字符的个数。

strlen 函数会一直向后找 \0 字符,直到找到为止,所以可能存在越界查找。

1.3 sizeof 和 strlen 的对比

sizeof:1.sizeof 是操作符

2.sizeof 计算操作数所占内存的大小,单位是字节

3.不关注内存中存放什么数据

strlen:1.strlen 是库函数,使用需要包含头文件 string.h

2.strlen 是求字符串长度的,统计的是 \0 之前字符的个数

3.关注内存中是否有 \0 ,如果没有 \0 ,就会持续往后找,可能会越界。

2. 数组和指针笔试题解析

2.1

2.2

2.3

2.4

2.5

2.6

2.7

2.8

3.指针运算经典例题

3.1

3.2

3.3

3.4

简单解释一下

3.5

简单解释一下

3.6

简单解释一下

3.7(很难)

如有需要,评论区留言,我出一个新文章解析。

注:好题值得推敲。

相关推荐
iAkuya几秒前
(leetcode)力扣100 16除自身以外数组的乘积(预处理前项后项积)
数据结构·算法·leetcode
Oliver_LaVine3 分钟前
java后端实现全链路日志ID记录
java·开发语言·spring
木头软件7 分钟前
批量将 Word 文档重命名为其标题
开发语言·c#·word
fantasy5_57 分钟前
C++ 智能指针深度解析:原理、实现与实战避坑
java·开发语言·c++
2301_764441337 分钟前
Python实现深海声弹射路径仿真
python·算法·数学建模
ERROR:998 分钟前
野路子:把海量文档一次性转换成多个PPT
开发语言·人工智能·c#
凌冰_8 分钟前
JAVA与MySQL实现银行管理系统
java·开发语言·mysql
顾安r9 分钟前
12.18 脚本网页 C标准库
linux·c语言·stm32·嵌入式硬件·html5
CodeCraft Studio9 分钟前
国产化Excel开发组件Spire.XLS教程:以Python编程方式在Excel中高亮重复值
开发语言·python·excel·spire.xls·excel自动化·excel高亮重复值·python处理excel
高洁0115 分钟前
DNN案例一步步构建深层神经网络
人工智能·神经网络·算法·机器学习·transformer