C++ 获取linux和windows系统的用户名
来源:互联网 发布:ec6108v9怎么安装软件 编辑:程序博客网 时间:2024/06/07 02:01
(1)获取linux系统的用户名:
通过 struct
passwd *getpwuid(uid_t uid)函数; 该函数返回passwd结构体,此结构体中包含用户名字段
struct
passwd {
char
*pw_name;
/*user name */
char
*pw_passwd;
/*user password */
uid_t pw_uid;
/*user id */
gid_t pw_gid;
/*group id */
char
*pw_gecos;
/*user real name */
char
*pw_dir;
/*home directory */
char
*pw_shell;
/*shell program */
};
(2)获取windows系统的用户名:
通过GetUserName( buffer , &len ) 函数
(3)完整的实例(跨平台):
#include <iostream>#include <string>#ifdef linux #include <unistd.h> #include <pwd.h>#endif#ifdef _WIN32 #include<Windows.h>#endifstd::string getUserName(){#if defined linux //linux system uid_t userid; struct passwd* pwd; userid=getuid(); pwd=getpwuid(userid); return pwd->pw_name;#elif defined _WIN32 //windows system const int MAX_LEN = 100; char szBuffer[MAX_LEN]; DWORD len = MAX_LEN; if( GetUserName(szBuffer, &len) ) //用户名保存在szBuffer中,len是用户名的长度 return szBuffer;#else //outher system return "";#endif}int main(){ std::string ss = getUserName(); std::cout << ss << std::endl; return 0;}(4)linux系统上gcc编译运行截图
阅读全文
1 0
- C++ 获取linux和windows系统的用户名
- Linux下使用hydra获取linux和windows系统用户名和密码的教程
- Linux下使用hydra获取linux和windows系统用户名和密码的教程
- 获取linux系统的用户名
- 用C语言如何获取当前Linux系统的用户名
- linux系统 Qt获取用户名
- 如何获取Windows系统登陆用户名
- 如何获取Windows系统登陆用户名
- windows NT中获取系统用户名
- VS2010获取windows的用户名和机器名
- windows和linux下系统时间的获取
- 如何修改Windows系统的注册用户名和组织名
- vc获取用户名和口令Windows
- VC获取Windows所有用户的用户名
- 获取windows所有用户名
- python在windows下获取当前系统用户名
- 获取windows系统ip、计算机名、当前用户名
- C语言获取当前登陆的用户名
- Integer包装类比较时“==”和equals()的区别及原因
- JVM 新生代为何需要两个 Survivor 空间?
- c++存储持续性、作用域和链接性
- 字符串右移
- Nginx secure_link防盗链模块
- C++ 获取linux和windows系统的用户名
- Hyperledger Fabric 相关概念
- Linux xargs命令详解
- 一文了解各种卷积结构原理及优劣
- redis 与赞和踩
- 线段树-单点更新-hihoCoder1077
- Maven 项目名称红色感叹号的问题总结
- JAVA企业面试题精选 数据库21-30
- 3DSlicer4:模块管理(二)场景视图、体数据、体绘制