C++ 中字符串的 sizeof 运算符和 strlen 函数的区别 | 您所在的位置:网站首页 › sizeof里面的表达式 › C++ 中字符串的 sizeof 运算符和 strlen 函数的区别 |
当前位置:主页 > 学无止境 > 编程语言 > C++ >
Python
PHP
Java
Go
TypeScript
C++
Vba
Node.js
C语言
MATLAB
C++ 中字符串的 sizeof 运算符和 strlen 函数的区别
作者:迹忆客
最近更新:2023/03/31
浏览次数:
本文将演示在 C++ 中使用 sizeof 运算符而不是 strlen 函数处理字符串时的多个差异。 sizeof 运算符特征和使用场景sizeof 运算符是一个一元运算符,用于检索给定表达式或数据类型的存储大小。此运算符以字节为单位评估对象大小,并且 sizeof(char) 保证为 1。 有一种误解,认为 1 字节总是等于 8 位,因此,我们可以以位为单位计算对象的大小。实际上,语言本身并不能保证一个字节是 8 位。它主要取决于底层硬件平台。尽管如此,大多数当代通用硬件仍使用 8 位字节。 请注意,sizeof 运算符不能应用于包含函数或不完整类型或位域的表达式。在以下示例代码中,我们将 sizeof 运算符应用于两个不同类型的数组,结果在你的平台上也可能相同。由于 char 保证有 1 个字节的大小,20 个字符的数组将占用 20 个字节。 另一方面,long long 数据类型是实现定义的,在这种情况下,它恰好是 8 个字节。因此,总数组大小为 160 字节。请注意,我们还可以通过将 sizeof 整个数组除以 sizeof 一个元素来找到数组中的元素数,如下一个示例的最后几行所示。 #include using std::cout; using std::endl; int main(){ char arr[20]; long long arr2[20]; cout |
CopyRight 2018-2019 实验室设备网 版权所有 |