詳解C語言中的getgrgid()函數(shù)和getgrnam()函數(shù)
C語言getgrgid()函數(shù):從組文件中取得指定gid的數(shù)據(jù)
頭文件:
#include <grp.h> #include <sys/types.h>
定義函數(shù):
strcut group * getgrgid(gid_t gid);
函數(shù)說明:getgrgid()用來依參數(shù)gid 指定的組識別碼逐一搜索組文件, 找到時便將該組的數(shù)據(jù)以group 結構返回. 返回值:返回 group 結構數(shù)據(jù), 如果返回NULL 則表示已無數(shù)據(jù), 或有錯誤發(fā)生.
范例
/* 取得gid=3 的組數(shù)據(jù) */
#include <grp.h>
#include <sys/types.h>
main()
{
strcut group *data;
int i = 0;
data = getgrgid(3);
printf("%s:%s:%d:", data->gr_name, data->gr_passwd, data->gr_gid);
while(data->gr_mem[i])
printf("%s, ", data->mem[i++]);
printf("\n");
}
執(zhí)行:
sys:x:3:root, bin, adm
C語言getgrnam()函數(shù):從組文件中取得指定組的數(shù)據(jù)
頭文件:
#include <grp.h> #include <sys/types.h>
定義函數(shù):
strcut group * getgrnam(const char * name);
函數(shù)說明:getgrnam()用來逐一搜索參數(shù)那么指定的組名稱, 找到時便將該組的數(shù)據(jù)以group 結構返回。group結構請參考getgrent()。
返回值:返回 group 結構數(shù)據(jù), 如果返回NULL 則表示已無數(shù)據(jù), 或有錯誤發(fā)生.
范例
/* 取得adm 的組數(shù)據(jù) */
#include <grp.h>
#include <sys/types.h>
main()
{
strcut group * data;
int i = 0;
data = getgrnam("adm");
printf("%s:%s:%d:", data->gr_name, data->gr_passwd, data->gr_gid);
while(data->gr_mem[i])
printf("%s, ", data->gr_mem[i++]);
printf("\n");
}
執(zhí)行:
adm:x:4:root, adm, daemon
相關文章
C++實現(xiàn)查找二叉樹中和為某一值的所有路徑的示例
這篇文章主要介紹了C++實現(xiàn)查找二叉樹中和為某一值的所有路徑的示例,文中的方法是根據(jù)數(shù)組生成二叉排序樹并進行遍歷,需要的朋友可以參考下2016-02-02

