详解C语言中的getgrgid()函数和getgrnam()函数

时间:2021-05-19

C语言getgrgid()函数:从组文件中取得指定gid的数据

头文件:

#include <grp.h> #include <sys/types.h>

定义函数:

strcut group * getgrgid(gid_t gid);

函数说明:getgrgid()用来依参数gid 指定的组识别码逐一搜索组文件, 找到时便将该组的数据以group 结构返回. 返回值:返回 group 结构数据, 如果返回NULL 则表示已无数据, 或有错误发生.

范例

#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");}

执行:

sys:x:3:root, bin, adm

C语言getgrnam()函数:从组文件中取得指定组的数据
头文件:

#include <grp.h> #include <sys/types.h>

定义函数:

strcut group * getgrnam(const char * name);

函数说明:getgrnam()用来逐一搜索参数那么指定的组名称, 找到时便将该组的数据以group 结构返回。group结构请参考getgrent()。

返回值:返回 group 结构数据, 如果返回NULL 则表示已无数据, 或有错误发生.

范例

#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");}

执行:

adm:x:4:root, adm, daemon

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章