C语言中NULL究竟是不是0 等问题?-c语言里面的null
C语言空指针是NULL,NULL的值不需要是0。但C++空指针必须是0值。
C++作者为了支持模版泛型编程,强行规定所有类型都必须有一个0值,而且规定了指针0值就是空指针。是的,C++中不应该使用NULL,应该使用0。

0值确实是0值,但0值也是有类型的,0指针,有0整数。而在具体题主所说的地方需要一个指针,所以那个地方的0就是指针。0指针理论上代表指向地址0的指针。
当然,C语言没有这么规定,没有规定NULL的具体值,所以可以使用任意值表示NULL。
对于同时支持C++的编译器,为了让C++与C语言代码兼容,往往会将NULL定义为0值,这样才能兼容C++规定空指针必须为0值的规定。
对于一些纯C编译器来说,有可能会设定NULL为一个非零的任意值,比如-1或者0xffffffff之类都有可能。
至于0值能不能访问,这也是平台相关的。对于x86平台来说0地址恰好是个不能访问的地址,所以空指针设定为0恰好就不能访问,这样也还算方便。不过对于其它平台而言,0值也可以是能访问的地址。
C语言中,NULL是个常量,该指针可以是任意值,对NULL指针的访问会造成什么结果,大概是未定义的。
而C++语言中NULL被定义为0,所以访问NULL等同于访问0地址。
“C语言中NULL究竟是不是0 等问题?-c语言里面的null” 的相关文章
虎皮兰养殖方法和注意事项 土壤:疏松肥沃、排水好的沙质土。花盆:可用泥质花盆、塑料盆、瓷盆、陶盆。阳光:最好将植株放在阳光可以直射到的地方。温度:生长温度20~30℃,冬季不低于10℃。浇水:春季表土干透后浇水;冬季保持盆土干而不燥。 家庭养殖方法...
原标题:贪小便宜吃大亏:男子扫快递二维码,收到话费红包、充值被骗提高警惕,不贪小便宜,不乱扫码……随着经济的不断发展,我们的社会治安已经大为改观,很少发生偷蒙拐骗之类的事件,但仍有一些居心不良的不法分子,通过网络、快递、电话等一些新型诈骗手段,四处行骗、令人不齿!不过我们每个人都要提高警惕、不贪小便...
助焊剂助焊剂是指在焊接工艺中能帮助和促进焊接过程,同时具有保护作用、阻止氧化反应的化学物质。在SMT贴片加工中,锡膏里的助焊剂是必不可少的,适当的助焊剂不仅能去除氧化物,防止金属表面再氧化,而且能提高可焊性,促进能量传递到焊接区域。 助焊剂的种类电子产品的组装与维修中常用的有松...
法拍新资产推广 前言 立拍法服法拍新资产推广!最新优质法拍房!价格实惠,房屋地段优。详细情况如下 2月份70城房价:一线城市同比上涨,二三线同比降幅收窄 2023年2月份,随着政策效果逐步显现及住房需求进一步释放,70个...
原标题:70城房价最新公布!2月一线城市房价同比上涨:北京新房价格涨4.7% 3月16日,国家统计局发布最新一期70城房价指数。2023年2月份,随着政策效果逐步显现及住房需求进一步释放,70个大中城市中商品住宅销售价格环比上涨城市个数继续增加,各线城市商品住宅销售价格环比总体...
说到写论文,可能最头疼的要数英文论文的写作了吧!词组搭配、文献综述、语法句型...... 论文本就令人令人头大,当它前面还加上了“英文”两字时,其难度级别直接是呈次方的增长。 别担心,今天小编就为大家准备了4个科研翻译利器,大家可以根据自己的需求权衡利弊进行选择~01、CNKI翻译...