Я хотел бы найти каталог текущего профиля пользователя программно в C++.
SHGetSpecialFolderLocation - лучший способ получить большинство специальных путей в Windows. Пройден CSIDL_PROFILE
, он должен получить интересующую вас папку.
Если вас действительно интересует содержимое переменной среды% UserProfile%, вы можете попробовать ExpandEnvironmentStrings
Для покрытия всех сценариев пользовательского профиля в Windows Vista и выше есть SHGetKnownFolderPath. Вот ссылка на страницу документации по нему и связанным с ним функциям.