C++ sizeof()、size() 和 strlen() 之间的区别

C++ Difference between sizeof(), size() & strlen()

sizeof()size()strlen()有什么区别? 在哪些情况下我应该使用某个功能?

size()函数用于return列表容器的大小或列表容器中元素的数量。 您可以使用它来查找数组中元素的数量。

sizeof() 与 int、float、char 等数据类型一起使用,它只是 return 分配了 内存量 该数据类型。

C++ 中的strlen() 函数returns 给定字符串的长度。它 return 是 null 终止的 字节字符串的长度。

  • Sizeof operator: 它是一个编译时运算符(而不是函数),用于确定变量或数据类型的大小(以字节为单位)。 sizeof 运算符可用于获取数组、类、结构、联合和任何其他用户定义的数据类型的大小。
  • 大小函数: 用于return设置容器的大小或容器中元素的个数如std::set,std::vector,还有很多其他的。
  • strlen 函数: strlen 函数将一个空终止字节字符串作为其参数,return 是其长度。

sizeof() 用于计算函数的大小,并用于动态内存分配,如 malloc。输入为否。元素数量 * 该类型的 1 个元素的大小。 strlen() returns 字符串的长度。 size() returns 元素个数。

size() 用于 X 中的元素数, 例如 if a={1,2,3,4} , size(a)=4.

sizeof() 是元素的大小(内存), 例如 sizeof(int)=4.

strlen()是字符串的大小, 例如 if a = "1234" . strlen(a) = 4.