#include "stdlib.h"
#include "sys/stat.h"
#include "stdio.h"
int main(){
struct stat s;
lstat("../", &s);
if(S_ISDIR(s.st_mode) == 0){
printf("yes\n");
}else{
printf("no\n");
}
}
结果:“没有”
当我运行此代码的不同变体时(例如使用 S_ISREG),我每次都得到与我期望相反的结果。因此,对于带有“../”的 S_ISREG,我得到“是”。我已经搞砸了一段时间(文件权限,目录创建等),所以我不知道我是否搞砸了什么。任何帮助,将不胜感激。