有人可以告诉我:
caddr_t
?void*
的区别如何?void*
以及何时使用caddr_t
?提前致谢。
答案 0 :(得分:16)
caddr_t
是与mmap
等低级别调用相关联的传统BSD类型,它永远不应在现代代码中使用。它被POSIX标准拒绝了。标准化mmap
使用void *
。
答案 1 :(得分:0)
caddr_t
用作指向核心地址的指针。当我需要从用户空间访问内核结构(使用mmap访问/dev/kmem
)时,我在SVR4中使用了它。即使存在“ /proc
时,ps命令仍然使用内核的mmap来开始遍历进程表。就像每个人都说的那样,它已被void *取代。