gpt4 book ai didi

c++ - C++中某些类型的指针之间的距离有什么限制?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:00:24 31 4
gpt4 key购买 nike

假设我有两个指向 T 类型的指针:

T* first = ...// whatever
T* second = ... //whatever else

我能否确定这两个指针之间的距离永远不会超过:

((size_t)(-1))/sizeof(T)?

最佳答案

您只能计算两个指针之间的距离(一个指针减去另一个指针),前提是两个指针都指向同一个数组中的元素,或者指向同一个数组的尾数。

如果两个指针满足那个约束,那么是的,两个指针之间的差的绝对值不能超过((size_t)(-1))/sizeof(T) 因为size_t 必须足够宽以表示任何对象的字节大小。

如果两个指针不满足该约束,则根本无法保证。

关于c++ - C++中某些类型的指针之间的距离有什么限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7831994/

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