免费注册 查看新帖 |

Chinaunix

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

空指针究竟指向了内存的哪个地方? [复制链接]

论坛徽章:
0
71 [报告]
发表于 2005-07-20 14:53 |只看该作者

空指针究竟指向了内存的哪个地方?

原帖由 "mik" 发表:
char *p; p = NULL;

倒不如直接定义为: char *p = 0; 简单明了


malloc为什么不在失败的时候返回0而是返回NULL呢?
为什么所有系统和标准函数对指针型都不是返回0而是返回NULL呢?
到底哪个才是简单明了的表述不是很清楚了吗?
简单明了不是个人习惯!

论坛徽章:
0
72 [报告]
发表于 2005-07-20 15:15 |只看该作者

空指针究竟指向了内存的哪个地方?

原帖由 "FH" 发表:
谋硎霾皇呛芮宄?寺穑?
简单明了不是个人习惯malloc为什么不在失败的时候返回0而是返回NULL呢?
为什么所有系统和标准函数对指针型都不是返回0而是返回NULL呢?
到底哪个才是简单明了的表述不是很清楚了吗?
简单明了不是个人习惯!!


char *p = (char *)malloc(sizeof(char) * N);

if (p == NULL)  与 if(!p) 效果一样

malloc 返回 是0 是 NULL 有什么区别???

论坛徽章:
0
73 [报告]
发表于 2005-07-20 15:36 |只看该作者

空指针究竟指向了内存的哪个地方?

谁说malloc返回0?哪份文档上写着?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
74 [报告]
发表于 2005-07-20 15:43 |只看该作者

空指针究竟指向了内存的哪个地方?

>;>;if (p == NULL)  与 if(!p) 效果一样

以前FH 都讲的很清楚了. 又弄出来了..~~

论坛徽章:
2
亥猪
日期:2014-03-19 16:36:35午马
日期:2014-11-23 23:48:46
75 [报告]
发表于 2005-07-20 15:55 |只看该作者

空指针究竟指向了内存的哪个地方?

[quote]原帖由 "FH"]谁说malloc返回0?哪份文档上写着?[/quote 发表:


对于NULL这个问题 不用说那么多了,这个问题不是简单的数学问题,象1+1=2可以讲明白。
而如果固执的人 在对这个问提的本质上没有理解,仅仅从表面去理解与0有什么关系的话,你说这么多就象是对一群工科学生将哲学。你费再多的唇舌不过是对牛弹琴,虽然你讲的是更深一个层次的东西,可是他们不能体会。所以有些东西只可意会,不可言传呢   

论坛徽章:
0
76 [报告]
发表于 2005-07-20 16:03 |只看该作者

空指针究竟指向了内存的哪个地方?

[quote]原帖由 "FH"]谁说malloc返回0?哪份文档上写着?[/quote 发表:


malloc 分配不成功,不返回 0 返回什么?

返回NULL????

char *p = (char *)malloc(sizeof(char) * N);
if (!p) 有错么?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
77 [报告]
发表于 2005-07-20 16:07 |只看该作者

空指针究竟指向了内存的哪个地方?

原帖由 "mik" 发表:


malloc 分配不成功,不返回 0 返回什么?

返回NULL????

char *p = (char *)malloc(sizeof(char) * N);
if (!p) 有错么?

For calloc() and malloc(), the value returned is a pointer to the allo-
       cated  memory,  which  is suitably aligned for any kind of variable, or
       NULL if the request fails.

论坛徽章:
0
78 [报告]
发表于 2005-07-20 16:14 |只看该作者

空指针究竟指向了内存的哪个地方?

[quote]原帖由 "mq110"][/quote 发表:


本身 NULL 就是 0 的定义

返回 0 并没什么不妥


while (*p)   与 while (*p != '\0')  本质是一样的.只是风格与精简的问题.

*p = '\0';   与 *p = 0;  本质上也是一样的. 在编译器看来,并不分别.编译后,内

存单元都为 0

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
79 [报告]
发表于 2005-07-20 16:16 |只看该作者

空指针究竟指向了内存的哪个地方?

谁告诉 你的NULL 是0??

我就此 保持沉默.
你错误理解 与我无关.把你弄明白了 有我什么好处?

论坛徽章:
2
亥猪
日期:2014-03-19 16:36:35午马
日期:2014-11-23 23:48:46
80 [报告]
发表于 2005-07-20 16:18 |只看该作者

空指针究竟指向了内存的哪个地方?

原帖由 "mq110" 发表:
谁告诉 你的NULL 是0??

我就此 保持沉默.
你错误理解 与我无关.把你弄明白了 有我什么好处?


呵呵, 兄弟醒悟了。。。。   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP