📄 p5-16.c
字号:
#include <stdio.h>#include <unistd.h>#include <limits.h>#include <grp.h>main(){ int mem_grp, num_grp, i; int gidsetsize; gid_t *grouplist; struct group *groupinfo; char **ptr; /* 获得组成员个数并为附加组ID数组分配空间 */ num_grp = getgroups(0,grouplist); grouplist = (gid_t *)malloc((size_t)(sizeof(gid_t)*num_grp)); /* 获得附加组ID */ mem_grp = getgroups(num_grp, grouplist); printf("there are %d supplementary groups",mem_grp); /* 列出每个组的名字、组ID以及组成员名 */ for (i=0; i<mem_grp; i++) { groupinfo = getgrgid(grouplist[i]); printf("\ngroup name is: %s \n", groupinfo->gr_name); printf(" group id is: %d\n", groupinfo->gr_gid); printf("the members in this group are: "); ptr = groupinfo->gr_mem; while ( *ptr ) { printf("%s, ", *ptr++); } } printf("\nDone\n");}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -