c语言里面怎么指定编码,在C语言编程中设置和获取代码组数的方法

C语言setgroups()函数:设置组代码函数头文件:

#include

定义函数:

int setgroups(size_t size, const gid_t * list);

函数说明:setgroups()用来将list 数组中所标明的组加入到目前进程的组设置中. 参数size 为list()的gid_t 数目, 最大值为NGROUP(32)。

返回值:设置成功则返回0, 如有错误则返回-1.

错误代码:

EFAULT:参数list 数组地址不合法.

EPERM:权限不足, 必须是root 权限

EINVAL:参数size 值大于NGROUP(32).

C语言getgroups()函数:获取组代码函数头文件:

#include #include

定义函数:

int getgroups(int size, gid_t list[]);

函数说明:getgroup() 用来取得目前用户所属的组代码. 参数size 为list() 所能容纳的gid_t 数目. 如果参数size 值为零, 此函数仅会返回用户所属的组数。

返回值:返回组识别码, 如有错误则返回-1.

错误代码:

EFAULT:参数list 数组地址不合法.

EINVAL:参数size 值不足以容纳所有的组.

范例

#include

#include

main()

{

gid_t list[500];

int x, i;

x = getgroups(0, list);

getgroups(x, list);

for(i = 0; i < x; i++)

printf("%d:%d\n", i, list[i]);

}

执行:

0:00

1:01

2:02

3:03

4:04

5:06

6:10

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值