相关疑难解决方法(0)

限制指针算术或比较的基本原理是什么?

在C/C++中,仅当结果指针位于原始指向的完整对象内时,才定义指针的加法或减法.此外,只有当两个指向对象是唯一完整对象的子对象时,才能执行两个指针的比较.

这种限制的原因是什么?

我认为分段内存模型(参见这里 §1.2.1)可能是其中一个原因,但由于编译器实际上可以定义所有指针的总顺序,如本答案所示,我对此表示怀疑.

c c++ pointers pointer-arithmetic language-lawyer

26
推荐指数
3
解决办法
1195
查看次数

标签 统计

c ×1

c++ ×1

language-lawyer ×1

pointer-arithmetic ×1

pointers ×1