读书人

malloc的使用方法解决方法

发布时间: 2012-04-13 13:50:24 作者: rapoo

malloc的使用方法
两种方法创建char**指针内存

(1)char **p = (char**)malloc(sizeof(char*)*2)
(2)char **p = (char**)malloc(4*2)

两个有什么区别吗?不考虑平台的区别。

[解决办法]
在32位体系结构下,没区别。64位就区别大了。不知道lz的“不考虑平台区别”是啥意思。
[解决办法]

探讨

不管64位的还是32位的,
简单的说就是假设为在32位操作系统下吧。

我上面的方法对吧,
char **p = (char**)malloc(2)这种方法应该不对吧,我要是想申请两个指针的话

引用:

在32位体系结构下,没区别。64位就区别大了。不知道lz的“不考虑平台区别”是啥意思。

[解决办法]
第二种快一点儿
[解决办法]
char **p = (char**)malloc(2)是申请2个字节
32位机上一个指针类型就是4个字节,2个指针需要8个字节,所以这个肯定不对

至于LZ给出的2种情况
第一种永远不会错
第二种情况如果确定指针是4个字节,就像楼上所说,效率会快一点点,因为不用sizeof计算一下

读书人网 >C++

热点推荐