关于linux下c的疑惑

voiddo_ls(char[],int);voiddostat(char[]);voidshow_file_info(char*,structstat*);voidmo... void do_ls(char [],int);
void dostat(char []);
void show_file_info(char* ,struct stat*);
void mode_to_letters(int ,char []);
char* uid_to_name(uid_t);
char* gid_to_name(gid_t);

void show_file_info(char* filename,struct stat* info_p)
{
char* uid_to_name(),*ctime(),*gid_to_name(),*filemode(); //这样写是什么意思?
void mode_to_letters();
char modestr[11];

mode_to_letters(info_p->st_mode,modestr);

printf("%s",modestr);
printf("%4d",(int)info_p->st_nlink);
printf("%-8s",uid_to_name(info_p->st_uid));
printf("%-8s",gid_to_name(info_p->st_gid));
printf("%8ld",(long)info_p->st_size);
printf("%.12s",4+ctime(&info_p->st_mtime));
printf("%s\n",filename);
}
其中的头文件和main函数我的就不给出了,我只是想知道
char* uid_to_name(),*ctime(),*gid_to_name(),*filemode();
这一个语句是什么意思,看着既不想是声明,也不想是调用,而且其中filemode()函数也没有定义,但是在编译的时候能通过,而且还生成了可执行程序,运行还很正常
请高手指点!
展开
 我来答
jhkwei
2009-11-09 · TA获得超过560个赞
知道小有建树答主
回答量:1324
采纳率:0%
帮助的人:869万
展开全部
看上的意思你就明白了,uid_to_name,比如,root是name,它的id是0;反过来,如果一个id是0问他的name,就用上面的函数;返回root;filemode 主要看mode,也是文件的读写执行如,0777这就是一个mode值,
char* uid_to_name(),*ctime(),*gid_to_name(),*filemode(); 声明函数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
badeager
2009-11-09 · TA获得超过290个赞
知道小有建树答主
回答量:720
采纳率:0%
帮助的人:602万
展开全部
只是定义函数,但是由于全局定义中已经有了这个函数,所以这只是个函数转义
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式