【发布时间】:2012-07-20 04:58:00
【问题描述】:
我正在尝试创建一个程序,使用 C++ 在 Windows 上检索当前用户的用户名。
我试过了:
char *userName = getenv("LOGNAME");
stringstream ss;
string userNameString;
ss << userName;
ss >> userNameString;
cout << "Username: " << userNameString << endl;
除了“用户名:”之外什么都不输出。
获取当前用户名的最简单、最好的方法是什么?
【问题讨论】:
-
另外,这可能会对您有所帮助:cplusplus.com/forum/beginner/12076
-
您不应使用环境变量来检索用户名。不保证存在。通常,在 BAT 文件之外,您不应使用环境变量。
-
如果必须使用环境变量来检索用户名,正确的是
USERNAME而不是LOGNAME。您可能还想要USERDOMAIN。