В настоящее время я пишу программу на C, которая должна хранить файлы конфигурации и различные файлы кэша на диске, а также некоторые статические файлы данных, которые никогда не меняются, и которые могут безопасно использоваться всеми пользователями.
Я хочу хранить эти файлы в соответствующем месте операционной системы, если это возможно, переносимым способом ...
Например, в GNU / Linux:
$XDG_CONFIG_HOME/<program_rame>/ -- for configuration files
$XDG_CACHE_HOME/<program_name>/ -- for cache files
$XDG_DATA_DIRS/<program_name>/ -- for static files
И, если они не установлены, я могу использовать рекомендуемые значения по умолчанию ("~ / .config", "~ / .cache" и "/ usr / share"). GNU / Linux - это просто.
Однако в Windows я понятия не имею, как найти их эквивалент. Я думаю, что это будет где-то в AppData, но где? И, самое главное, как мне получить это программно? А как насчет других ОС (особенно Mac OS, поскольку большинство других UNIX также могут использовать метод «GNU / Linux»)?
Я открыт для всех решений, независимо от того, нужна ли им библиотека или нет Заранее спасибо за помощь!