Рассмотрим следующий код:
int* p1 = new int[100];
int* p2 = new int[100];
const ptrdiff_t ptrDiff = p1 - p2;
int* p1_42 = &(p1[42]);
int* p2_42 = p1_42 + ptrDiff;
Теперь, гарантирует ли Стандарт, что p2_42
указывает на p2[42]
? Если нет, то всегда ли это верно для кучи Windows, Linux или веб-сборки?