当前位置: 首页 > news >正文

C语言学习之sizeof函数和strlen函数

        经过我们之前的学习,已经接触过很多次sizeof函数和strlen函数了,应用他们来求解数组大小等等。但是实际应用中两者的差别还是很大的,接下来我们就来了解一下吧。

sizeof函数

        sizeof函数计算的是变量所占内存空间的大小的单位是字节。如果操作数是类型的话,计算的是使用类型所创建的变量所赞内存的大小。

sizeof只在乎变量占用内存的大小,不在乎内存中存放的是什么类型的数据

典型应用:求数组中元素的个数:

输出结果为:

strlen函数

        strlen函数是C语言的库函数,功能是用来求解字符串的长度。

        在使用前,需要包含头文件<string.h>

        函数原型:

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

        strlen会一直想后找到\0,直到找到为止,所以可能存在越界现象。

如上图代码所示,这是为什么呢

如图所示

针对arr1数组的时候,abc后自动补\0

针对arr2数组的时候,因为后面没有自动补\0,所以它会一直索引到内存当中的\0

所以当我们应用strlen函数的时候避免像上图当中第二种的初始化的形式

        感谢看到这里的读者朋友,这里跪求一个点赞,谢谢。

相关文章:

  • 【Code】《代码整洁之道》笔记-Chapter17-味道与启发
  • 云服务器和物理服务器有什么区别
  • 2025年3月,再上中科院1区TOP,“等级熵+状态识别、故障诊断”
  • 制作一款打飞机游戏教程6:射击优化
  • 【嵌入式八股5】C++:多线程相关
  • Python基础语法——注释和输入输出
  • Go 语言的 map 在解决哈希冲突时,主要使用了链地址法同时参考了开放地址法的思想即每个桶的 8个 key val对是连续的
  • 如何利用游戏盾提升在线游戏的安全性?
  • 2025 年蓝桥杯 Java B 组真题解析分享
  • 大模型平台Dify工作流高效调用Ragflow知识库,解决其原生知识库解析和检索能力不足的问题
  • 基于ssm的航空售票系统
  • by组态适用领域
  • Shell编程之函数与数组
  • 临床协调简历模板
  • python——学生管理系统
  • 5款电脑健康状况监测软件
  • STL详解 - vector的模拟实现
  • AI核心概念之“RAG” - 来自DeepSeek
  • curl命令
  • AI大模型与行业变革:从传统到智能的跃迁之路
  • 马文化体验展商圈启动,环球马术冠军赛的能量不止在赛场
  • 教育部召开全国中小学幼儿园安全工作视频会议:加强校园安防建设
  • 全国登记在册民营企业超过5700万户,占企业总量92.3%
  • 朱雨玲:从前世界第一到兼职运动员,30岁后开始“玩”乒乓
  • 重点并不在于设计更聪明的机器,而在于开发宇宙技术的多样性
  • 韩国一战机飞行训练中掉落机炮吊舱和空油箱