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 分钟前
【Java】封装位运算通用工具类——用一个整数字段替代几十个布尔列,极致节省存储空间
java·开发语言·设计模式·工具类·位运算·合成复用原则
网域小星球2 分钟前
C 语言从 0 入门(二十一)|typedef 类型重定义:简化复杂类型,代码更清爽
c语言·算法·类型重定义·结构体简化·函数指针简化
xinhuanjieyi4 分钟前
php给30支NBA球队添加logo图标,做好对应关系
android·开发语言·php
XWalnut7 分钟前
LeetCode刷题 day10
数据结构·算法·leetcode
菜菜小狗的学习笔记8 分钟前
八股(三)Java并发
java·开发语言
一晌小贪欢25 分钟前
PyQt5 开发一个 PDF 批量合并工具
开发语言·qt·pdf
神仙别闹25 分钟前
基于 MATLAB 实现的图像信号处理
开发语言·matlab·信号处理
weixin_4460235628 分钟前
c语言第一个编译器是用什么语言写的?自举原理
c语言·编译器·迭代优化·无代码开发平台·自举原理
swift1922131 分钟前
Qt多语言问题 —— 静态成员变量
开发语言·c++·qt
それども35 分钟前
Spring Bean @Autowired自注入空指针问题
java·开发语言·spring