gpt4 book ai didi

c++ - `(T *)0 - (T *)0` 是否明确定义为 0?

转载 作者:搜寻专家 更新时间:2023-10-31 00:10:48 24 4
gpt4 key购买 nike

<分区>

考虑以下代码:

#include <iostream>

int main()
{
int *a = 0, *b = 0;
std::cout << (a - b);
}

ideone此代码按预期打印 0,但我不确定它是否是定义明确的行为。

我想知道 (T*)0 - (T*)0 是否定义明确?是否保证等于0
在 C 和 C++ 中是否相同?如果不是,有什么区别?

(当然,T 不是void 也不是std::nullptr_t,因为指针算法对它们不起作用。)

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com