加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

getlogin()c函数返回NULL和错误“没有这样的文件或目录”

发布时间:2020-12-16 03:14:54 所属栏目:百科 来源:网络整理
导读:我有一个关于getlogin()函数()的问题.我尝试从c程序中使用此功能获取我的帐户的登录名.但该函数返回NULL.使用perror显示错误是“没有这样的文件或目录”. 我没有得到什么问题.有没有办法在程序中获取用户登录名. 以下是一个示例代码: #include stdio.h#incl
我有一个关于getlogin()函数()的问题.我尝试从c程序中使用此功能获取我的帐户的登录名.但该函数返回NULL.使用perror显示错误是“没有这样的文件或目录”.

我没有得到什么问题.有没有办法在程序中获取用户登录名.

以下是一个示例代码:

#include <stdio.h>
#include <unistd.h>

int main()
{
  char *name;
  name = getlogin();
  perror("getlogin() error");
  //printf("This is the login info: %sn",name);
  return 0;
}

这是输出:getlogin()错误:没有这样的文件或目录

请让我知道如何得到这个权利.

谢谢.

解决方法

getlogin是确定登录用户的不安全和不推荐的方式.这可能是试图打开登录用户的记录,也许是utmp或某事. getPwuid(getuid())是确定正在运行的用户的正确方法(可能与登录用户不一样,但总是更好地使用).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读