这是我的代码,发生崩溃: -
let URL = NSURL(string: "http://files.parsetfss.com/fa80bc63-88d4-412d-a478-2451cffc92a9/tfss-1d2a321d-b02e-4745-a589-e31536f648df-XXXXX%20CAT15%2030.p0001.jpg")
NSLog("Loading page with URL: \(URL)")
该应用与EXC_BAD_ACCESS
答案 0 :(得分:13)
NSLog()
的第一个参数是格式字符串,并且包含
format specifiers(以%
开头),由{}扩展
跟随变量参数列表。在您的情况下,%20C
是格式说明符,但是
没有提供匹配的参数。这会导致未定义的行为,
它可能会崩溃或产生不完整或错误的输出。
如果您想使用NSLog()
,则可以使用常规安全方法
NSLog("%@", "Loading page with URL: \(URL)")
在这种特殊情况下,
NSLog("Loading page with URL: %@", URL)
也适用,因为NSURL
是NSObject
子类并且可以使用
使用%@
格式。
答案 1 :(得分:3)
您应该使用println而不是NSLog。
let URL = NSURL(string: "http://files.parsetfss.com/fa80bc63-88d4-412d-a478-2451cffc92a9/tfss-1d2a321d-b02e-4745-a589-e31536f648df-XXXXX%20CAT15%2030.p0001.jpg")!
println("Loading page with URL: \(URL)")
我添加了选项标志!最后解开。