Possible Duplicate:
SnowLeopard Xcode warning: “format not a string literal and no format arguments”

这行代码有以下问题.

"格式字符串不是字符串文字(可能不安全)"

NSLog([NSString stringWithFormat:@"%@", entered]);

有什么建议吗?

推荐答案

编译器希望我们对格式字符串(第一个参数为NSLog)使用NSString常量,因为它可以防止可能违反安全性的已知攻击.例如,您可以按如下方式更改发布的代码,以使编译器满意:

NSLog(@"%@", [NSString stringWithFormat:@"%@", entered]);

EDIT

当然,上述内容可以(也应该)简单地写如下:

NSLog(@"%@", entered);

Nature of Security Exploits

Uncontrolled format string[1]是一种软件漏洞,

典型的利用

资料来源:维基百科Uncontrolled Format String

[1] :http://cwe.mitre.org/data/definitions/134.html"CWE-134:非受控格式字符串".常见弱点列举.斜接.

Objective-c相关问答推荐

在哪里可以找到 iPad 示例代码

通过指针算术访问数组值与 C 中的下标

在@implementation 而不是@interface 定义的类变量?

iOS 应用程序下一个键不会转到下一个文本字段

具有匿名函数/块的 NSTimer?

是否可以在 nsstring 中包含引号?

不区分大小写的核心数据 CONTAINS 或 BEGINS WITH 约束

Objective-C 的 Eclipse 插件?

lldb 无法打印变量值并显示错误:对 'id' 的引用不明确

didReceiveRemoteNotification:当应用程序处于后台并且未连接到Xcode时未调用fetchCompletionHandler

我们可以在 UIPageViewController 中自定义页面指示器吗?

从 UIPageViewController 中移除视图控制器

如何保存我的 iPhone 应用程序的用户首选项?

UIBezierPath 减go 路径

Xcode 在您的 keys 串中找不到此配置文件的有效私有证书/有效密钥对

自定义 colored颜色 我的 UIActivityIndi​​catorView

为什么使用弱指针进行委托?

如何在不管理 UDID 和重新编译的情况下无线分发 ios 应用程序

围绕其中心旋转 UIView 保持其大小

如何在 iOS 中创建自定义 UIActivity?