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(很难)

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

注:好题值得推敲。

相关推荐
普通网友1 分钟前
用 Next.js 15 做图片查看网站:图片双击放大的交互坑与修复
开发语言·javascript·交互
独自破碎E4 分钟前
kafka中的时间轮实现
java·开发语言
程序员阿鹏8 分钟前
如何保证写入Redis的数据不重复
java·开发语言·数据结构·数据库·redis·缓存
JAY_LIN——814 分钟前
字符串函数(strncpy/cat/cmp、strstr、strtok、strerror)
c语言·开发语言
明朝百晓生23 分钟前
强化学习[chapter8] [page17] Value Function Methods
人工智能·算法
lly20240627 分钟前
C# 数据类型
开发语言
POLITE335 分钟前
Leetcode 56.合并区间 JavaScript (Day 6)
算法·leetcode·职场和发展
不爱吃糖的程序媛42 分钟前
鸿蒙PC端运行C语言程序:从编译到部署的全流程实战
c语言·华为·harmonyos
树欲静而风不止慢一点吧43 分钟前
Qt5/6版本对应的Emscripten版本
开发语言·qt
微爱帮监所写信寄信1 小时前
微爱帮监狱寄信写信系统后台PHP框架优化实战手册
android·开发语言·人工智能·网络协议·微信·https·php