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

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

注:好题值得推敲。

相关推荐
Dontla14 小时前
go语言Windows安装教程(安装go安装Golang安装)(GOPATH、Go Modules)
开发语言·windows·golang
chushiyunen14 小时前
python rest请求、requests
开发语言·python
feifeigo12314 小时前
基于马尔可夫随机场模型的SAR图像变化检测源码实现
算法
铁东博客14 小时前
Go实现周易大衍筮法三变取爻
开发语言·后端·golang
baidu_huihui14 小时前
在 CentOS 9 上安装 pip(Python 的包管理工具)
开发语言·python·pip
南 阳14 小时前
Python从入门到精通day63
开发语言·python
lbb 小魔仙14 小时前
Python_RAG知识库问答系统实战指南
开发语言·python
weixin_4460235614 小时前
C语言:面向过程、应用底层开发、跨平台的通用程序设计语言
c语言·跨平台·数据类型·底层开发·面向过程
fengfuyao98514 小时前
基于STM32的4轴步进电机加减速控制工程源码(梯形加减速算法)
网络·stm32·算法
551只玄猫15 小时前
【数学建模 matlab 实验报告13】主成分分析
开发语言·数学建模·matlab·课程设计·主成分分析