gpt4 book ai didi

c++ - C++中各种数据类型sizeof()的解释

转载 作者:搜寻专家 更新时间:2023-10-31 02:20:19 24 4
gpt4 key购买 nike

附加问题(1分):假设我们使用的是 32 位 Windows 操作系统和 C/C++ 程序。请估算以下的sizeof()(单位:byte)

• char str[] = “Hello” ;
• char *p = str ;
• int n = 10;
Please calculate:
• sizeof ( str ) = __________
• sizeof ( p ) = __________
• sizeof ( n ) = __________

大家好,

我正在尝试围绕 C++ 中这个相当基本的概念进行思考。我会告诉你我认为正确的答案是什么,看看我是否在正确的轨道上。对于第一个,sizeof(str),我相信它总共有 6 个字节。我从其他问题中注意到一个模式,即总是向这些类型的字符串添加 1 个字节。 (5 个字母 +1)。我的问题是,这个“+1”来自什么?至于第二个down,这只是指指针p的大小,对吧?大小总是 4 个字节?最后,第三个,我相信只是指一个 int 的大小,n。据我所知,所有整数的大小都是 4 字节正确吗?这是否意味着所有整数都是 4 个字节,无论它是 10 或 10000,还是任何其他数字。关于此主题的任何其他重要信息也非常感谢并张开双臂接受!谢谢!

最佳答案

char str[] = "Hello" ;

相当于:

char str[] = {'H', 'e', 'l', 'l', 'o', '\0'};

标准保证 sizeof(char)1。因此 sizeof(str)6

指针和 int 的大小始终取决于平台。

关于c++ - C++中各种数据类型sizeof()的解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32857716/

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