(отделите это от этот вопрос )
Следующие 3 макроса появляются во многих исходных файлах C, которые пытаются обнаружить / полагаться на доступность POSIX функциональность:
_POSIX_SOURCE
_POSIX_C_SOURCE
_POSIX_
(и _POSIX
?)
В связанном с этим вопросе объясняется, что мы должны установить _POSIX_C_SOURCE
на версию POSIX, на которую мы хотим положиться (хотя ее установка не гарантирует, что функциональность на самом деле будет доступно - это зависит от компилятора / ОС).Кроме того, хотя я могу установить его как пользователь , неясно, когда другие установят его самостоятельно (например, система компилятор / сборка).Что касается двух других, я не знаю ни когда я должен их устанавливать, ни когда другие устанавливают их.
Итак, в чем разница в значениях между этими тремя макросами?Когда каждый из них будет установлен для меня?И почему / когда я должен выбрать один из них поверх других, если вообще?