要使用 MinGW 从 Windows 获取用户名,我应该使用 unistd.h 中的函数 getlogin() 还是 Windows 函数 GetUserName?
谢谢你。
您可以检查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()
如果您在Windows上,请使用