在进行指针算术时,有很多未定义/未指定行为的示例 - 指针必须指向同一数组内部(或超出末尾的一个),或同一对象内部,限制何时可以基于上述内容进行比较/操作, ETC。
以下操作定义明确吗?
int* p = 0;
p++;
§5.2.6/1:
通过添加来修改操作数对象的值1
到它,除非该对象是类型bool
[..]
涉及指针的加法表达式在 §5.7/5 中定义:
如果指针操作数和结果都指向
相同的数组对象,或者超过数组对象的最后一个元素,
评估不应产生溢出;否则,该行为
未定义。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)