ptrdiff_t слишком маленький?

Я всегда задавался вопросом: разве ptrdiff_t не должен содержать разницу любых двух указателей по определению ? Почему это не удается, когда два указателя расположены слишком далеко? (Я не указываю на какой-либо конкретный язык ... Я имею в виду все языки, которые имеют этот тип.)

(например, вычтите указатель с адресом 1 из байтового указателя с адресом 0xFFFFFFFF , когда у вас есть 32-битные указатели, и он переполняет знаковый бит ...)

17
задан Mehrdad 1 February 2011 в 07:43
поделиться