我目前有一个代码,用于检查文件是否是目录,如下所示;
file = readdir (dir);
if(file->d_type & DT_DIR){
\* some code*\
}
我想知道,与此完全相反的if语句是什么。 “如果文件不是目录”这一行。
答案 0 :(得分:6)
使用 not 运算符(!
)可以取消任何布尔表达式:
if (!(file->d_type & DT_DIR)) {
答案 1 :(得分:2)
关于你的问题,你可以这样做:
if(!(file->d_type & DT_DIR)){}
答案 2 :(得分:2)
您可以检查表达式的计算结果是否为false:
file = readdir (dir);
if( (file->d_type & DT_DIR) == 0 ){
\* some code*\
}
答案 3 :(得分:1)
按位&将匹配DT_SOCK = 12,DT_WHT = 14 ......如果只检查目录......应使用" =="
file = readdir (dir);
if(file->d_type == DT_DIR){
\* some code*\
}
反向:
file = readdir (dir);
if(file->d_type != DT_DIR){
\* some code*\
}
你可以对任何条件块进行否定来反转它,你现在已经知道了..