如果NULL和0作为空指针常数是等价的,那我到底该用哪一个


Posted in 面试题 onSeptember 16, 2014
许多程序员认为在所有的指针上下文中都应该使用NULL, 以表明该值应该被看作指针。另一些人则认为用一个宏来定义0, 只不过把事情搞得更复杂, 反而令人困惑。因而倾向于使用未加修饰的0。没有正确的答案。C 程序员应该明白, 在指针上下文中NULL 和0 是完全等价的, 而未加修饰的0 也完全可以接受。任何使用NULL (跟0 相对) 的地方都应该看作一种温和的提示, 是在使用指针; 程序员(和编译器都) 不能依靠它来区别指针0 和整数0。在需要其它类型的0 的时候, 即便它可能工作也不能使用NULL, 因为这样做
发出了错误的格式信息。(而且, ANSI 允许把NULL 定义为((void *)0), 这在非指针的上下文中完全无效。特别是, 不能在需要ASCII 空字符(NUL) 的地方用NULL。如果有必要, 提供你自己的定义
#define NUL ’\0’

Tags in this post...

面试题 相关文章推荐
如何使用PHP session
Apr 21 面试题
编写用C语言实现的求n阶阶乘问题的递归算法
Oct 21 面试题
经典c++面试题五
Dec 17 面试题
几个SQL的面试题
Mar 08 面试题
广州品高软件.net笔面试题目
Apr 18 面试题
最新远光软件笔试题面试题内容
Nov 08 面试题
PPP协议组成及简述协议协商的基本过程
May 28 面试题
C#笔试题
Jul 14 面试题
linux面试题参考答案(6)
Jun 23 面试题
Java面试题:为什么要用Java
May 11 面试题
Java Servlet的主要功能和作用是什么
Feb 14 面试题
Delphi CS笔试题
Jan 04 面试题
利用异或运算实现两个无符号数的加法运算
Dec 20 #面试题
如何打印出当前源文件的文件名以及源文件的当前行号
Apr 05 #面试题
如果NULL定义成#define NULL((char *)0)难道不就可以向函数传入不加转换的NULL了吗
Feb 15 #面试题
实现向右循环移位
Jul 31 #面试题
类成员函数的重载、覆盖和隐藏区别
Jan 27 #面试题
在使用非全零作为空指针内部表达的机器上, NULL是如何定义
Nov 09 #面试题
将一个数的从第5位开始的7个数取出,其余位置0
May 26 #面试题
You might like
用cookies来跟踪识别用户
2006/10/09 PHP
PHP连接SQLServer2005的实现方法(附ntwdblib.dll下载)
2012/07/02 PHP
php查看请求头信息获取远程图片大小的方法分享
2013/12/25 PHP
php从csv文件读取数据并输出到网页的方法
2015/03/14 PHP
Joomla语言翻译类Jtext用法分析
2016/05/05 PHP
PHP全功能无变形图片裁剪操作类与用法示例
2017/01/10 PHP
PHP getDocNamespaces()函数讲解
2019/02/03 PHP
php面向对象基础详解【星际争霸游戏案例】
2020/01/23 PHP
Html中JS脚本执行顺序简单举例说明
2010/06/19 Javascript
jquery 中多条件选择器,相对选择器,层次选择器的区别
2012/07/03 Javascript
JavaScript中创建对象和继承示例解读
2014/02/12 Javascript
在vue项目中安装使用Mint-UI的方法
2017/12/27 Javascript
vue中设置height:100%无效的问题及解决方法
2018/07/27 Javascript
nodejs 如何手动实现服务器
2018/08/20 NodeJs
2种在vue项目中使用百度地图的简单方法
2018/09/28 Javascript
vue-cli2.0转3.0之项目搭建的详细步骤
2018/12/11 Javascript
JS左右无缝轮播功能完整实例
2019/05/16 Javascript
JS正则表达式常见函数与用法小结
2020/04/13 Javascript
Vue自定义render统一项目组弹框功能
2020/06/07 Javascript
python列出目录下指定文件与子目录的方法
2015/07/03 Python
Python selenium文件上传方法汇总
2020/11/19 Python
wxpython实现图书管理系统
2018/03/12 Python
详谈python在windows中的文件路径问题
2018/04/28 Python
将pandas.dataframe的数据写入到文件中的方法
2018/12/07 Python
Python实现Event回调机制的方法
2019/02/13 Python
Python操作MySQL数据库的两种方式实例分析【pymysql和pandas】
2019/03/18 Python
Python urlencode和unquote函数使用实例解析
2020/03/31 Python
基于django2.2连oracle11g解决版本冲突的问题
2020/07/02 Python
全球领先美式家具品牌:Ashley爱室丽家居
2017/08/07 全球购物
Android笔试题总结
2014/11/29 面试题
机械工程师岗位职责
2014/06/16 职场文书
现场施工员岗位职责
2015/04/11 职场文书
超市员工辞职信范文
2015/05/12 职场文书
Python实现生活常识解答机器人
2021/06/28 Python
Python办公自动化解决world文件批量转换
2021/09/15 Python
vue整合百度地图显示指定地点信息
2022/04/06 Vue.js