Я хотел бы найти каталог текущего профиля пользователя программно на C ++.
SHGetSpecialFolderLocation - лучший способ получить доступ к большинству специальных путей в Windows. Пройденный CSIDL_PROFILE должен извлечь интересующую вас папку.
CSIDL_PROFILE
Если вас действительно интересует содержимое переменной среды% UserProfile%, вы можете попробовать ExpandEnvironmentStrings
Самый простой способ в Windows и Linux:
char *szBuff; szBuff=std::getenv("USERPROFILE"); //Returning value of %USERPROFILE%
Чтобы охватить все сценарии профиля пользователя в Windows Vista и выше, существует SHGetKnownFolderPath. Здесь - ссылка на страницу документации и связанные с ней функции.