基本信息
st_mode是16位二进制数
#define S_IFDIR 0040000
#define S_ISDIR(m) (((m) &(0170000)) == (0040000))
st_mode前四位表示文件类型
S_IFMT是一个掩码,可以过滤出前四位表示的文件类型
问题是S_ISDIR (m)是如何验证某字段的文件类型为目录。
问题细节描述
st_mode是十六位二进制 然而看S_IFDIR应该是七位八进制(自己感觉上这个想法应该是错的 ),这两个是如何进行与运算?
这个东西搞的我好乱我不知道正确的理解是什么样子的 网上也没有找到能解答我问题的资料 在这里请求帮助 谢谢