а от макроса с нулем аргументов пользы для этого никакой
В си всех пугали, что функции выполняются долго. Они и правда выполняются "долго", но относительно. Плюс когда писались книги, то не говорилось про то, что компилятор всё поинлайнит когда надо. Вот и юзали люди макросы как константные функции.