免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: amazingjxq
打印 上一主题 下一主题

malloc分配空间后返回的指针为什么需要类型转换? [复制链接]

论坛徽章:
0
11 [报告]
发表于 2010-04-19 18:00 |只看该作者
ls强悍。。。

论坛徽章:
0
12 [报告]
发表于 2010-04-19 18:06 |只看该作者
{:3_191:} 10楼强人

论坛徽章:
0
13 [报告]
发表于 2010-04-19 18:41 |只看该作者
本帖最后由 unistd 于 2010-04-19 18:42 编辑

malloc返回值根本不需要类型转换。。。
历史上曾经需要把malloc的返回指针强制转换,那是因为当时malloc的返回值是 char*,, ,

后来c引入了void *类型,根本就不需要转换了。而且编译器不会给出任何警告! void *类型本来就是为了这种目的而引入的! 你再加一个类型转换,多此一举!

楼上那些说加上类型转换更严格,更好的人,实际上是【傻】【逼】!

论坛徽章:
0
14 [报告]
发表于 2010-04-19 18:57 |只看该作者
类型转换给了你一个增加代码可读性的机会。


你可以不转换。
flw 发表于 2010-04-19 17:47


据说你貌似是个高手啊,结果就这个档次???


我觉得linus批判微软的匈牙利命名法时说的一句话,可以全灭上面说加上类型转换好的人:编译器知道数据的类型!

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
15 [报告]
发表于 2010-04-19 20:05 |只看该作者
据说你貌似是个高手啊,结果就这个档次???


我觉得linus批判微软的匈牙利命名法时说的一句话,可 ...
unistd 发表于 2010-04-19 18:57

看起来,挑战我让你感到很兴奋。

论坛徽章:
0
16 [报告]
发表于 2010-04-19 20:13 |只看该作者
本帖最后由 unistd 于 2010-04-19 20:16 编辑
看起来,挑战我让你感到很兴奋。
flw 发表于 2010-04-19 20:05


我是看到楼上这么多【傻】【逼】而感到吃惊!一个写程序的人,应该能把类型弄清楚,就好比一个程序员能看懂i++, i+=123这样的代码,而不会说i = i +1; i = i + 123更严格更具有可维护性一样。

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
17 [报告]
发表于 2010-04-19 20:15 |只看该作者
呵呵。

论坛徽章:
0
18 [报告]
发表于 2010-04-19 21:40 |只看该作者
讨论归讨论,每个人的知识面有深浅,有的人这方面知道的多一些,有的人那方面知道的多一些,互相学习,共同进步,完全没必要说一些伤和气的话,不至于啊,大家能在一个帖子下面跟帖,就是缘分嘛!

论坛徽章:
2
程序设计版块每日发帖之星
日期:2015-06-17 22:20:00每日论坛发贴之星
日期:2015-06-17 22:20:00
19 [报告]
发表于 2010-04-19 21:57 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
2
青铜圣斗士
日期:2015-11-26 06:15:59数据库技术版块每日发帖之星
日期:2016-07-24 06:20:00
20 [报告]
发表于 2010-04-19 22:09 |只看该作者
围观
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP