BOOL警告类型的指针的初始化

问题描述:

我收到了一个新的类型为'BOOL *'(aka'bool *')的指针初始化为一个常量布尔表达式为null的警告。这是导致我从未见过的警告的代码?BOOL警告类型的指针的初始化

if ([[NSFileManager defaultManager]fileExistsAtPath:filePath isDirectory:NO]) { 

fileExistsAtPath:isDirectory:isDirectory是通过参考参数的返回的方法,即它返回所指示如果路径是目录或不是一个布尔。

从Apple文档:

isDirectory:返回时,包含YES如果路径是一个目录,或者如果最终的路径元素是指向目录的符号链接,否则不包含。如果路径不存在,返回时该值不确定。如果您不需要此信息,则传递NULL。

用途:

BOOL isDirectory; 
if ([[NSFileManager defaultManager]fileExistsAtPath:filePath isDirectory:& isDirectory]) { 
    if (isDirectory) { 
     // Code for the directory case 
    } 
    else { 
     // Code for the file case 
    } 
    ... 
} 

如果你不想知道,如果路径指向一个目录只需使用:

- (BOOL)fileExistsAtPath:(NSString *)path