当前位置:首页 > 科技  > 软件

深入解析C++中Sizeof和Strlen的奥秘:区别、应用与技巧全揭秘!

来源: 责编: 时间:2024-04-09 09:03:07 246观看
导读sizeof 和 strlen 是 C++ 中用于处理字符串的两个不同的操作符,它们的作用和使用场景有很大的区别。sizeof操作符:区别:sizeof 是一个运算符,不是一个函数,用于获取一个类型或变量的字节大小。对于数组,sizeof 返回整个数组

E1W28资讯网——每日最新资讯28at.com

sizeof 和 strlen 是 C++ 中用于处理字符串的两个不同的操作符,它们的作用和使用场景有很大的区别。E1W28资讯网——每日最新资讯28at.com

sizeof操作符:

区别:

  • sizeof 是一个运算符,不是一个函数,用于获取一个类型或变量的字节大小。
  • 对于数组,sizeof 返回整个数组的字节大小。
  • 对于指针,sizeof 返回指针本身的字节大小,而不是指针指向的内存块的大小。

应用和示例:

#include <iostream>int main() {    int integerVar;    double doubleVar;    char charArray[10];    char* charPointer;    std::cout << "Size of int: " << sizeof(integerVar) << " bytes" << std::endl;    std::cout << "Size of double: " << sizeof(doubleVar) << " bytes" << std::endl;    std::cout << "Size of char array: " << sizeof(charArray) << " bytes" << std::endl;    std::cout << "Size of char pointer: " << sizeof(charPointer) << " bytes" << std::endl;    return 0;}

上述代码中,sizeof 被用于获取不同类型和变量的字节大小,输出结果将显示它们在内存中占用的空间大小。E1W28资讯网——每日最新资讯28at.com

strlen函数:

区别:

  • strlen 是一个函数,用于计算字符串的长度,即字符串中的字符数,不包括终止符 /0
  • 对于字符数组,strlen 返回数组中第一个字符到 /0 终止符的字符数。
  • 对于指针,strlen 返回指针指向的字符串的长度,同样不包括终止符 /0

应用和示例:

#include <iostream>#include <cstring>int main() {    const char* str = "Hello, World!";    std::cout << "Length of /"" << str << "/": " << strlen(str) << " characters" << std::endl;    char charArray[] = "C++ is fun!";    std::cout << "Length of /"" << charArray << "/": " << strlen(charArray) << " characters" << std::endl;    return 0;}

上述代码中,strlen 用于获取字符串的长度,输出结果将显示每个字符串中的字符数。E1W28资讯网——每日最新资讯28at.com

注意事项:

  • sizeof 和数组: sizeof 返回整个数组的字节大小,而不是数组中的元素个数。如果需要获取数组中的元素个数,可以使用 sizeof(array) / sizeof(array[0]) 的方式。
  • strlen 和字符串终止符: strlen 计算字符串的长度时,不包括字符串终止符 /0。因此,实际存储的字符数是 strlen 返回的值加上终止符。
  • 指针的 sizeof: 对指针使用 sizeof 会返回指针本身的字节大小,而不是指向的数据的大小。要获取指针指向的数据大小,需要使用其他方式,如通过解引用指针后再使用 sizeof

sizeof 主要用于获取数据类型或变量的字节大小,而 strlen 用于获取字符串的长度。在使用这两者时,需要注意其返回值的含义和用途,以避免出现错误。E1W28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-82177-0.html深入解析C++中Sizeof和Strlen的奥秘:区别、应用与技巧全揭秘!

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 追觅科技 x 抖音商城开新日火力全开,助力品牌营销解锁新增量

下一篇: Python数据分析必备:Pandas中Rolling方法的完全指南

标签:
  • 热门焦点
  • 7月安卓手机性能榜:红魔8S Pro再夺榜首

    7月份的手机市场风平浪静,除了红魔和努比亚带来了两款搭载骁龙8Gen2领先版处理器的新机之外,别的也想不到有什么新品了,这也正常,通常6月7月都是手机厂商修整的时间,进入8月份之
  • 5月iOS设备好评榜:iPhone 14仅排第43?

    来到新的一月,安兔兔的各个榜单又重新汇总了数据,像安卓阵营的榜单都有着比较大的变动,不过iOS由于设备的更新换代并没有那么快,所以相对来说变化并不大,特别是iOS好评榜,老款设
  • 0糖0卡0脂 旭日森林仙草乌龙茶优惠:15瓶到手29元

    旭日森林无糖仙草乌龙茶510ml*15瓶平时要卖为79.9元,今日下单领取50元优惠券,到手价为29.9元。产品规格:0糖0卡0脂,添加草本仙草汁,清凉爽口,富含茶多酚,保留
  • 28个SpringBoot项目中常用注解,日常开发、求职面试不再懵圈

    前言在使用SpringBoot开发中或者在求职面试中都会使用到很多注解或者问到注解相关的知识。本文主要对一些常用的注解进行了总结,同时也会举出具体例子,供大家学习和参考。注解
  • 消费结构调整丨巨头低价博弈,拼多多还卷得动吗?

    来源:征探财经作者:陈香羽随着流量红利的退潮,电商的存量博弈越来越明显。曾经主攻中高端与品质的淘宝天猫、京东重拾&ldquo;低价&rdquo;口号。而过去与他们错位竞争的拼多多,靠
  • 东方甄选单飞:有些鸟注定是关不住的

    文/彭宽鸿编辑/罗卿东方甄选创始人俞敏洪带队的&ldquo;7天甘肃行&rdquo;直播活动已在近日顺利收官。成立后一年多时间里,东方甄选要脱离抖音自立门户的传闻不绝于耳,&ldquo;7
  • 阿里大调整

    来源:产品刘有媒体报道称,近期淘宝天猫集团启动了近年来最大的人力制度改革,涉及员工绩效、层级体系等多个核心事项,目前已形成一个初步的&ldquo;征求意见版&rdquo;:1、取消P序列
  • 荣耀Magicbook V 14 2021曙光蓝版本正式开售,拥有触摸屏

    荣耀 Magicbook V 14 2021 曙光蓝版本正式开售,搭载 i7-11390H 处理器与 MX450 显卡,配备 16GB 内存与 512GB SSD,重 1.48kg,厚 14.5mm,具有 1.5mm 键盘键程、
  • 上海举办人工智能大会活动,建设人工智能新高地

    人工智能大会在上海浦江两岸隆重拉开帷幕,人工智能新技术、新产品、新应用、新理念集中亮相。8月30日晚,作为大会的特色活动之一的上海人工智能发展盛典人工
Top