LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1100|回复: 7

有区别吗? malloc(sizeof*(struct TEST)) 与 malloc(sizeof*(struct TEST*))

[复制链接]
发表于 2004-7-13 17:38:23 | 显示全部楼层 |阅读模式
有区别吗?
malloc(sizeof*(struct TEST))
malloc(sizeof*(struct TEST*))
发表于 2004-7-13 19:12:55 | 显示全部楼层
你的目的是什么?
发表于 2004-7-14 09:20:45 | 显示全部楼层
呵呵,没区别,都是语法错误
发表于 2004-7-16 11:49:35 | 显示全部楼层
malloc(sizeof*(struct TEST))
//应该这么写吧 malloc(sizeof(struct TEST))
//好好像就对了
malloc(sizeof*(struct TEST*))
//这个好像错的有点离谱了 struct TEST*是个指针怎么 sizeof啊 !?
//还加个*就更不懂什么意思了
发表于 2004-7-16 14:55:38 | 显示全部楼层
指针也有大小啊,呵呵
如果写的程序要移植到不同的平台上,可能存在不同平台指针长度不同的问题。这样写还是很有意义的。
发表于 2004-7-16 14:57:23 | 显示全部楼层
发表于 2004-7-18 06:47:30 | 显示全部楼层
区别太大了。

malloc(sizeof*(struct TEST))  //分配TEST解构大小的内存,定义多大就使多大

malloc(sizeof*(struct TEST*))  //分配指针内存。一般32位系统上都是分配4字节
发表于 2004-7-18 06:59:20 | 显示全部楼层
sorry , 看错了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表