如果NULL定义成#define NULL((char *)0)难道不就可以向函数传入不加转换的NULL了吗


Posted in 面试题 onFebruary 15, 2012
一般情况下, 不行。复杂之处在于, 有的机器不同类型数据的指针有不同的内
部表达。这样的NULL 定义对于接受字符指针的的函数没有问题, 但对于其它类型的指针参数仍然有问题(在缺少原型的情况下), 而合法的构造如FILE *fp = NULL;则会失败。
不过, ANSI C 允许NULL 的可选定义#define NULL ((void *)0)
除了潜在地帮助错误程序运行(仅限于使用同样类型指针的机器, 因此帮助有限) 以外, 这样的定义还可以发现错误使用NULL 的程序(例如, 在实际需要使用ASCII NUL 字符的地方; )。无论如何, ANSI 函数原型确保大多数(尽管不是全部;)指针参数在传入函数时正确转换。因此, 这个问题有些多余。

Tags in this post...

面试题 相关文章推荐
一些PHP的面试题
May 06 面试题
包装类的功能、种类、常用方法
Jan 27 面试题
.NET面试题:什么是值类型和引用类型
Jan 12 面试题
介绍一下ICMP(Internet Control Message Protocol)Internet控制信息协议
Nov 26 面试题
逻辑链路控制协议
Oct 01 面试题
explicit和implicit的含义
Nov 15 面试题
Linux机考试题
Jul 17 面试题
linux面试题参考答案(8)
Aug 11 面试题
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
Jan 06 面试题
某科技软件测试面试题
May 19 面试题
编程输出如下图形
Nov 24 面试题
程序员经常用到的UNIX命令
Apr 13 面试题
实现向右循环移位
Jul 31 #面试题
类成员函数的重载、覆盖和隐藏区别
Jan 27 #面试题
在使用非全零作为空指针内部表达的机器上, NULL是如何定义
Nov 09 #面试题
将一个数的从第5位开始的7个数取出,其余位置0
May 26 #面试题
NULL是什么,它是怎么定义的
May 09 #面试题
简述数组与指针的区别
Jan 02 #面试题
编写一子程序,将一链表倒序,即使链表表尾变表头,表头变表尾
Feb 10 #面试题
You might like
PHP详解ASCII码对照表与字符转换
2011/12/05 PHP
php获取数组中重复数据的两种方法
2013/06/28 PHP
PHP遍历并打印指定目录下所有文件实例
2014/02/10 PHP
php中ltrim()、rtrim()与trim()删除字符空格实例
2014/11/25 PHP
PHP文件生成的图片无法使用CDN缓存的解决方法
2015/06/20 PHP
thinkPHP中volist标签用法示例
2016/12/06 PHP
js 获取服务器控件值的代码
2010/03/05 Javascript
模拟用户点击弹出新页面不会被浏览器拦截
2014/04/08 Javascript
jquery插件star-rating.js实现星级评分特效
2015/04/15 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐二)
2016/07/12 Javascript
jQuery可见性过滤选择器用法示例
2016/09/09 Javascript
jQuery 局部div刷新和全局刷新方法总结
2016/10/05 Javascript
AngularJs中 ng-repeat指令中实现含有自定义指令的动态html的方法
2017/01/19 Javascript
Angular 4依赖注入学习教程之简介(一)
2017/06/04 Javascript
JS实现数组去重方法总结(六种方法)
2017/07/14 Javascript
微信小程序第三方框架对比 之 wepy / mpvue / taro
2019/04/10 Javascript
JQuery获得内容和属性方法解析
2020/05/30 jQuery
Python GAE、Django导出Excel的方法
2008/11/24 Python
Python实现测试磁盘性能的方法
2015/03/12 Python
详解Python验证码识别
2016/01/25 Python
Python读取YUV文件,并显示的方法
2018/12/04 Python
对Python3 goto 语句的使用方法详解
2019/02/16 Python
Django集成celery发送异步邮件实例
2019/12/17 Python
Tripadvisor新西兰:阅读评论,比较价格和酒店预订
2018/02/10 全球购物
瑞士隐形眼镜和护理产品网上商店:Linsenklick
2019/10/21 全球购物
德国2018年度最佳在线药房:Bodfeld Apotheke
2019/11/04 全球购物
耐克亚太地区:Nike APAC
2019/12/07 全球购物
出国留学介绍信
2014/01/13 职场文书
端午节粽子促销活动方案
2014/02/02 职场文书
出生公证委托书
2014/04/03 职场文书
征用土地赔偿协议书
2014/09/26 职场文书
大学学生个人总结
2015/02/15 职场文书
2015大学自主招生自荐信范文
2015/03/04 职场文书
幼儿园开学报名通知
2015/07/16 职场文书
2016年党员创先争优承诺书
2016/03/25 职场文书
Ruby序列化和持久化存储 Marshal和Pstore介绍
2022/04/18 Ruby