gpt4 book ai didi

c - 为什么 `struct stat` 中的字段名为 st_something?

转载 作者:太空狗 更新时间:2023-10-29 16:51:54 25 4
gpt4 key购买 nike

引用the structure for information about a file inode :

 dev_t       st_dev;     /* ID of device containing file */
ino_t st_ino; /* inode number */
mode_t st_mode; /* protection */
nlink_t st_nlink; /* number of hard links */
uid_t st_uid; /* user ID of owner */
gid_t st_gid; /* group ID of owner */
dev_t st_rdev; /* device ID (if special file) */
off_t st_size; /* total size, in bytes */
time_t st_atime; /* time of last access */
time_t st_mtime; /* time of last modification */
time_t st_ctime; /* time of last status change */
blksize_t st_blksize; /* blocksize for filesystem I/O */
blkcnt_t st_blocks; /* number of blocks allocated */

我真的只是在寻找任何类型的答案。我注意到所有字段都以 st_ 开头,并且在 Internet 上找不到很好的解释。

最佳答案

这可以追溯到很久以前,一直到第一个 C 版本。他们没有用于结构成员的单独符号表,名称被添加到全局符号表中。导致明显令人讨厌的全局 namespace 污染。解决方法与您今天在枚举上使用的方法相同,在它们前面加上几个字母以避免名称冲突。

这是一种历史记录。当您看到具有这些成员名称的结构时,您就知道它是旧的

关于c - 为什么 `struct stat` 中的字段名为 st_something?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10325870/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com