c - 帮助我理解这个函数标题。代码来自 FreeBSD 8 源代码 UFS 部分

标签 c unix kernel freebsd

 /*
  180  * Create a regular file
  181  */
  182 static int
  183 ufs_create(ap)
  184         struct vop_create_args /* {
  185                 struct vnode *a_dvp;
  186                 struct vnode **a_vpp;
  187                 struct componentname *a_cnp;
  188                 struct vattr *a_vap;
  189         } */ *ap;
  190 {
  191         int error;
  192 
  193         error =
  194             ufs_makeinode(MAKEIMODE(ap->a_vap->va_type, ap->a_vap->va_mode),
  195             ap->a_dvp, ap->a_vpp, ap->a_cnp);
  196         if (error)
  197                 return (error);
  198         return (0);
  199 }

请帮我从第 182-189 行获取信息...这对我来说很奇怪.. 这个函数标题是什么意思? (我的意思是,什么是返回值,什么是输入参数?) 谢谢大家。

最佳答案

返回类型是 int,它有一个参数,一个名为 apstruct vop_create_args*。这是 K&R 表示法。

关于c - 帮助我理解这个函数标题。代码来自 FreeBSD 8 源代码 UFS 部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5024518/

相关文章:

c - 如何通过posix命名信号量同步两个进程?

c - Atmega @ 8MHZ 延迟 8 倍到快

java - 如何自动、定期地将文件从windows机器上传到unix服务器?

linux-kernel - 从内核空间访问用户空间 - get_user_pages

c++ - 是否有像 : is the memory readonly or accesible by current process? 这样的运行时断言

copy_from_user() 错误 : destination size is to small

c - (C) 不兼容的指针类型 [LPCWSTR]

c - 输入中的scanf问题

perl - 从 perl 调用带有反引号的 find - find : write error: Broken pipe

git - 在 Windows 7 上使用 GIT BASH 的 Groovy Bootstrap 错误