Desde que actualicé a la última versión de Xcode 3.2.1 y Snow Leopard, he recibido la advertencia
"formato no es una cadena literal ni argumentos de formato"
del siguiente código:
NSError *error = nil;
if (![self.managedObjectContext save:&error])
{
NSLog([NSString stringWithFormat:@"%@ %@, %@",
errorMsgFormat,
error,
[error userInfo]]);
}
Si errorMsgFormat
es un NSString
formato con especificadores (por ejemplo:) "print me like this: %@"
, ¿qué hay de malo en la NSLog
llamada anterior ? ¿Y cuál es la forma recomendada de solucionarlo para que no se genere la advertencia?
NSLog()
puede tomar un argumento, cuando la cadena de formato no contiene especificadores de formato.