gpt4 book ai didi

c++ - C/C++ 中用于数组的 sizeof()

转载 作者:太空宇宙 更新时间:2023-11-03 10:29:00 26 4
gpt4 key购买 nike

所以 C/C++ 数组不知道它们的长度,对吧?但是当函数 sizeof(array) 无法知道数组中元素的数量时,它如何工作并以字节为单位为我们提供正确的大小?

最佳答案

So C/C++ arrays don't know about their length, right.

你的假设是错误的。除了 C99 中引入的可变长度数组外,C 和 C++ 中的数组都具有在编译时已知的大小。编译器知道它们的大小。

您的困惑可能是因为有时数组名称会衰减为指向其第一个元素的指针(例如作为函数参数传递时),这里确实丢失了大小信息。

但是当 sizeof 用于数组时,数组不会转换为指针。这是你的另一个困惑:sizeof不是一个函数,它是一个运算符。

关于c++ - C/C++ 中用于数组的 sizeof(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22878352/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com