1

我正在使用Xcode 4.6。我的应用程序工作的设备和模拟器上,但我得到一个警告,当建筑:“格式字符串不是字符串文字(可能不安全)”

“格式字符串不是一个字符串(潜在不安全)”从这段代码

[sArray addObject:[NSString stringWithFormat:subCatName]]; 

l.text= [spacing stringByAppendingFormat:[mArray objectAtIndex:section]]; 

为什么,我该如何解决?

回答

8

既然你实际上并没有格式化字符串,这样做:

[sArray addObject:subCatName]; 

l.text= [spacing stringByAppendingString:[mArray objectAtIndex:section]]; 

出于某种原因,NSString stringWithFormat:是最滥用的方法,我在故见一个。只有在实际将一个或多个变量放入最终字符串中时,才能使用它。

+4

+1“最滥用的方法之一”! –

+2

@MartinR我很想知道这种过度使用的来源。必须有一些在线课程或书籍错误地教导其使用。 – rmaddy

+0

@rmaddy:你说的对。 +1 – Ram

相关问题