要使用MinGW从Windows获取用户名,我应该使用unistd.h中的getlogin()函数还是Windows函数GetUserName?
谢谢。
答案 0 :(得分:2)
您可以查看USERNAME
变量:
char *name = getenv("USERNAME"); // Get environmentvariable for Username
if( name == NULL )
return -1; // Username not found ...
else
printf("%s\n", name); // Output Username
如果您完全使用Windows,则可以使用其API(GetUserName()
):
#include <windows.h>
#include <Lmcons.h>
// ...
TCHAR name [ UNLEN + 1 ];
DWORD size = UNLEN + 1;
if( GetUserName((TCHAR*) name, &size) )
printf("%s\n", name); // Output Username
else
return -1; // Username not found ...
getlogin()
,如果您使用的是 linux / unix ,因为MinGW中 GetUserName()