Функция getlogin () c возвращает NULL и ошибку «Нет такого файла или каталога»

У меня есть вопрос относительно функции 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: %s\n", name);
  return 0;
}

И вот результат: ошибка getlogin (): нет такого файла или каталога

Пожалуйста, дайте мне знать, как это сделать.

Спасибо.

10
задан Tim Post 25 January 2011 в 00:43
поделиться