Это НЕ бесполезно.Ожидается, что блоки, возвращаемые из malloc, будут уникальными.Таким образом, каждый блок, возвращаемый функцией malloc, содержит как данные внутри блока, так и уникальный идентификатор для него, являющийся его адресом.Если последнее свойство важно и тот факт, что оно не содержит данных, не является проблемой, тогда оно полезно.
Однако, как уже упоминалось, это отличный способ написания непереносимого кода.Однако это НЕ то же самое, что нелегальный код, и вполне допустимо для реализации, поддерживающей его (как, видимо, делает Windows).