我是stat()
这个符号链接(在Kubuntu GNU / Linux 16.04上),我得到奇怪的值0100600八进制(十进制33152)。如果我按位 - 并且它与S_IFMT
(它是0170000八进制),我得到0600八进制。那是什么意思? stat.h
列出以下值:
/* File types. */
#define __S_IFDIR 0040000 /* Directory. */
#define __S_IFCHR 0020000 /* Character device. */
#define __S_IFBLK 0060000 /* Block device. */
#define __S_IFREG 0100000 /* Regular file. */
#define __S_IFIFO 0010000 /* FIFO. */
#define __S_IFLNK 0120000 /* Symbolic link. */
#define __S_IFSOCK 0140000 /* Socket. */
我期待看到0120000,而不是0600(所有八进制)。是什么给了什么?