c语言函数头文件格式,C语言fgetgrent()函数:读取组格式函数头文件:#include <grp.h> #include <stdio.h>...

C语言fgetgrent()函数:读取组格式函数

头文件:

#include #include #include

定义函数:

struct group * getgrent(FILE * stream);

函数说明:fgetgrent()会从参数stream 指定的文件读取一行数据, 然后以group 结构将该数据返回. 参数stream 所指定的文件必须和、etc/group 相同的格式. group 结构定义请参考getgrent().

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

范例

#include

#include

#include

main()

{

struct group *data;

FILE *stream;

int i;

stream = fopen("/etc/group", "r");

while((data = fgetgrent(stream)) != 0)

{

i = 0;

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

}

fclose(stream);

}

执行:

root:x:0:root,

bin:x:1:root, bin, daemon

daemon:x:2:root, bin, daemon

sys:x:3:root, bin, adm

adm:x:4:root, adm, daemon

tty:x:5

disk:x:6:root

lp:x:7:daemon, lp

mem:x:8

kmem:x:9

wheel:x:10:root

mail:x:12:mail

news:x:13:news

uucp:x:14:uucp

man:x:15

games:x:20

gopher:x:30

dip:x:40:

ftp:x:50

nobody:x:99:

C语言fgetpwent()函数:读取密码格式

头文件:

#include #include #include

定义函数:

struct passwd * fgetpwent(FILE * stream);

函数说明:fgetpwent()会从参数stream 指定的文件读取一行数据, 然后以passwd 结构将该数据返回. 参数stream 所指定的文件必须和/etc/passwd 相同的格式. passwd 结构定义请参考getpwent().

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

范例

#include

#include

main()

{

struct passwd *user;

FILE *stream;

stream = fopen("/etc/passwd", "r");

while((user = fgetpwent(stream)) != 0)

{

printf("%s:%d:%d:%s:%s:%sn", user->pw_name, user->pw_uid, user->pw_gid,

user->pw_gecos, user->pw_dir, user->pw_shell);

}

}

执行:

root:0:0:root:/root:/bin/bash

bin:1:1:bin:/bin:

daemon:2:2:daemon:/sbin:

adm:3:4:adm:/var/adm:

lp:4:7:lp:/var/spool/lpd:

sync:5:0:sync:/sbin:/bin/sync

shutdown:6:0:shutdown:/sbin:/sbin/shutdown

halt:7:0:halt:/sbin:/sbin/halt

mail:8:12:mail:/var/spool/mail:

news:9:13:news:var/spool/news

uucp:10:14:uucp:/var/spool/uucp:

operator:11:0:operator :/root:

games:12:100:games:/usr/games:

gopher:13:30:gopher:/usr/lib/gopher-data:

ftp:14:50:FTP User:/home/ftp:

nobody:99:99:Nobody:/:

xfs:100:101:X Font Server: /etc/Xll/fs:/bin/false

gdm:42:42:/home/gdm:/bin/bash

kids:500:500: : /home/kids:/bin/bash

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值