Iphone 为什么nspredicate崩溃?

Iphone 为什么nspredicate崩溃?,iphone,objective-c,ipad,core-data,Iphone,Objective C,Ipad,Core Data,我想检查字段是否包含数据。这是我的密码: [fetchRequest setPredicate:[NSPredicate predicateWithFormat: @"( SeriesStudyID == %@ )" ,"" ]]; 但它崩溃了。为什么?@iAnand的答案是错误的。在谓词格式字符串中使用%@是完全可以接受的 问题是,%@意味着在对象中替换,但您正在替换“,它不是一个对象,而是一个字符*。因此,您只需在双引号前面添加一个

我想检查字段是否包含数据。这是我的密码:

[fetchRequest setPredicate:[NSPredicate predicateWithFormat:
                            @"( SeriesStudyID ==  %@ )" ,"" ]];

但它崩溃了。为什么?

@iAnand的答案是错误的。在谓词格式字符串中使用
%@
是完全可以接受的


问题是,
%@
意味着在对象中替换,但您正在替换
,它不是一个对象,而是一个
字符*
。因此,您只需在双引号前面添加一个
@
符号,即可将其从
char*
转换为
NSString

您正在传递一个C字符串,其中需要一个Objective-C对象。