Portál AbcLinuxu, 9. května 2025 18:32

Dotaz: User ID v C++?

22.4.2015 17:17 noob
User ID v C++?
Přečteno: 286×
Odpovědět | Admin
Zdravím, potřeboval bych poradit jak na program v C++, který vypíše ID uživatele. Vím, že by program měl využít funkci geteuid(http://man7.org/linux/man-pages/man2/getuid.2.html), ale není mi jasné, jak program poskládat. Poradí někdo? Předem díky za odpověď.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

22.4.2015 17:41 DarkKnight | skóre: 26
Rozbalit Rozbalit vše Re: User ID v C++?
Odpovědět | | Sbalit | Link | Blokovat | Admin
1) http://www.cplusplus.com/doc/tutorial/basic_io/
2) uz zminovane http://man7.org/linux/man-pages/man2/getuid.2.html
xxxxxx avatar 22.4.2015 18:27 xxxxxx | skóre: 23
Rozbalit Rozbalit vše Re: User ID v C++?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jedna možnost je:
#include <iostream>

int main()
{
    std::cout << system("id -u") << std::endl;

    return 0;
}
Druhá, trochu hezčí:
#include <iostream>
#include <unistd.h>

int main()
{
    std::cout << getuid() << std::endl;

    return 0;
}
22.4.2015 22:32 Sten
Rozbalit Rozbalit vše Re: User ID v C++?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Anebo rovnou použít geteuid, jak navrhuje OP (getuid dává občas jinou hodnotu, než by většina lidí čekala, třeba u programu se suid dává UID uživatele, který jej spustil, ne toho, pod kterým běží).

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.