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” 的相关文章
原标题:金钱木养殖方法和注意事项,简单3点,你也能把它养的又肥又绿! 金钱木又称云木、金铖木、为马齿苋科多年生草本植物。因它的叶片酷似金钱般的样子故而得名金钱木,金钱木不仅寓意好,...
最近,同方全球传世尊享上线了,这款产品跟平时的增额寿不同,它有一个特点,回本速度超快,几乎比同类产品的回本速度都快。 具体什么情况?同方全球传世尊享值不值得买?大家跟着奶爸一起来看看。同方全球传世尊享怎么样?同方全球传世尊享值不值得购买?奶爸总结一、同方全球传世尊享怎么样?...
在最近更新的货币政策中,俄罗斯央行表示计划在几年内推出官方数字卢布,以此增加金融服务的可用性并优化跨境支付。 该国央行将逐年解锁CBDC的不同试验和功能,并为其实施提供了时间表。据悉,2023年在数字...
对于科研工作者来说,不管是写文章还是申请各类课题,检索和阅读文献是日常必不可少的工作内容。PubMed文献数据库是生物医学方向文献的重要来源,这里安利给大家一款中文版的PubMed网站。 【官方网址】: http://www.chinapubmed.net/...
"世界上最大的勇气,是压力下的优雅。"——海明威 世界上始终存在一种声音让大家以生命的长度作为评价人生价值的标准,但有些人二十岁的年纪就已经让旁人感受到了生命力的枯竭,而有些人即使已经高龄近百,仍然绽...
在展开道路救援时常会碰到搭电搜救,电瓶亏电打不着火的情形很常见,那碰到此种情形的这时候怎样展开搭电搜救呢?明天公路搜救的酷夏就来跟我们传授电动车搭电搜救的操作过程。 我们在进行搭电救援的时候需要记住两个原则:正极连接正极,负极连接负极,让电瓶并联;连接电瓶极柱时先正后负,拆卸时先负...