(char *)NULL-(char *)NULL未定义行为?

问题描述 投票:4回答:2

((char *)NULL - (char *)NULL)是UB吗?

IMO,这里的答案并非无关紧要。有什么想法吗?

Godbolt实验链接https://godbolt.org/z/zgVGk9

PS

我不是想在null指针中添加内容(就像在拟议的欺骗中那样),而只是在一种特殊情况下]。

((char *)NULL-(char *)NULL)是UB吗?海事组织的答案在这里并非无关紧要。有什么想法吗?实验的Godbolt链接https://godbolt.org/z/zgVGk9 PS我不是要添加......>

c pointers null language-lawyer pointer-arithmetic
2个回答
6
投票

表达式具有未定义的行为。

(该问题已作为this question的副本被关闭,但是仅讨论了指针+整数算法,而不是该问题所要求的指针-指针算法。如果存在,请随意将其作为副本来关闭。专门询问有关指针-指针相减的问题。)


3
投票

简短的回答是,行为未定义:

© www.soinside.com 2019 - 2024. All rights reserved.