7/2 = _______,对于 string str=”abc”,变量str共消耗内存_________字节

来源:百度知道 编辑:UC知道 时间:2024/06/04 15:12:52
回答有奖

C++:
7/2 = 3
str 消耗 9 字节 (前面有空格,最后是\0)
模板对象地址占4字节。
java:
String 头字母大写。
java里面我估计跟C++实现原理是一样的。但表面上看会是8(内容4,地址4)字节。其实我觉得也是9字节。

相关知识:声明初始化一个对象后。消耗的内存是:地址占的内存加上地址指向的对象所消耗的内存。

出这题的人没有表达清楚,他可能是问"str"指向的对象占多少内存。而不是"str"共消耗多少内存。地址所在内存在不同机器里还是不一样的。

7/2 = 3
str 消耗 20 字节
——补充:
楼下的,
标准库string类型模版对象占16字节。
另外,前面没有空格,那个是lz用了中文引号的问题,你看错了吧。
另外,string类型因为是可变长字符串,所以第一次分配的字符串内存空间是不是正好4字节,我也说不好,不过那样的话,感觉这题目就太深了,lz这是哪里的题目?怎么会涉及string模板的具体实现?要不就是出题人异想天开。