当stringWithFormat格式没有类型占位符但有参数时会发生什么

阿卡拉尔

假设我有一个这样的方法

+ (NSString *)stringWithObject:(id)object format:(NSString *)format
{
    NSString *string = [NSString stringWithFormat:format, object];

    NSLog(@"%@", string);

    return string;
}

object参数是从来没有nil,但传递到方法的format参数可能要么是

NSString *formatWithPlaceholder = @"object: %@"

或者

NSString *formatWithoutPlaceholder = @"No object";

因此,如果formatWithoutPlaceholder将其作为格式参数传递给该方法,则控制台输出是正确的,并且没有警告或错误,但这会引起其他问题吗?我觉得这样的用法有stringWithFormat:问题。

谢尔盖·卡里尼琴科(Sergey Kalinichenko)

当格式字符串的格式说明符少于提供的参数数量时,没什么不好的事情:您的代码对两个格式字符串均有效。

但是,当相反的情况发生时(格式说明符多于参数),您将得到未定义的行为。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

当stringWithFormat格式没有类型占位符但有参数时会发生什么

来自分类Dev

Java PreparedStatement,batchExecute没有任何参数时会发生什么?

来自分类Dev

当我混合使用有符号和无符号类型时会发生什么?

来自分类Dev

ACRA:当没有互联网连接时会发生什么?

来自分类Dev

当返回对象的函数在没有返回语句的情况下结束时会发生什么

来自分类Dev

当没有内存在C#中构造OutOfMemoryException时会发生什么?

来自分类Dev

当一个聚合没有“ group by”子句时会发生什么?

来自分类Dev

在没有实现的情况下覆盖 spring 存储库方法时会发生什么

来自分类Dev

在现有变量上调用malloc时会发生什么?

来自分类Dev

当有人拉着我推时会发生什么?

来自分类Dev

当有人拉着我推时会发生什么?

来自分类Dev

当Java中有多个main方法时会发生什么?

来自分类Dev

当我添加iPhone 6+启动图像但没有@ 3x图标图像时会发生什么?

来自分类Dev

当我添加iPhone 6+启动图像但没有@ 3x图标图像时会发生什么?

来自分类Dev

当我以编程方式添加一个没有约束的子视图时会发生什么?

来自分类Dev

当所有数据节点都在hadoop中发生故障时会发生什么?

来自分类Dev

当目前没有wsarecv时,传入数据会发生什么

来自分类Dev

没有保留的sharedInstance会发生什么情况?

来自分类Dev

当您“挂载”带有内容的现有文件夹时会发生什么?

来自分类Dev

Parse API:当有多个对象具有相同的对象 id 时会发生什么?

来自分类Dev

当声明符(我/州)在for块中时会发生什么?

来自分类Dev

设置PINx时会发生什么,为什么有时起作用?

来自分类Dev

将函数用作参数时会发生什么情况?

来自分类Dev

使用/ noguiboot参数启动系统时会发生什么?

来自分类Dev

Python Redis pubsub:发布类型时会发生什么变化?

来自分类Dev

当有多个emacs初始化文件时会发生什么?

来自分类Dev

使用另一个(现有)对象创建新对象时会发生什么?

来自分类Dev

当类和函数具有相同的名称时会发生什么?

来自分类Dev

当有人说计算机“挂起”或死机时会发生什么?

Related 相关文章

  1. 1

    当stringWithFormat格式没有类型占位符但有参数时会发生什么

  2. 2

    Java PreparedStatement,batchExecute没有任何参数时会发生什么?

  3. 3

    当我混合使用有符号和无符号类型时会发生什么?

  4. 4

    ACRA:当没有互联网连接时会发生什么?

  5. 5

    当返回对象的函数在没有返回语句的情况下结束时会发生什么

  6. 6

    当没有内存在C#中构造OutOfMemoryException时会发生什么?

  7. 7

    当一个聚合没有“ group by”子句时会发生什么?

  8. 8

    在没有实现的情况下覆盖 spring 存储库方法时会发生什么

  9. 9

    在现有变量上调用malloc时会发生什么?

  10. 10

    当有人拉着我推时会发生什么?

  11. 11

    当有人拉着我推时会发生什么?

  12. 12

    当Java中有多个main方法时会发生什么?

  13. 13

    当我添加iPhone 6+启动图像但没有@ 3x图标图像时会发生什么?

  14. 14

    当我添加iPhone 6+启动图像但没有@ 3x图标图像时会发生什么?

  15. 15

    当我以编程方式添加一个没有约束的子视图时会发生什么?

  16. 16

    当所有数据节点都在hadoop中发生故障时会发生什么?

  17. 17

    当目前没有wsarecv时,传入数据会发生什么

  18. 18

    没有保留的sharedInstance会发生什么情况?

  19. 19

    当您“挂载”带有内容的现有文件夹时会发生什么?

  20. 20

    Parse API:当有多个对象具有相同的对象 id 时会发生什么?

  21. 21

    当声明符(我/州)在for块中时会发生什么?

  22. 22

    设置PINx时会发生什么,为什么有时起作用?

  23. 23

    将函数用作参数时会发生什么情况?

  24. 24

    使用/ noguiboot参数启动系统时会发生什么?

  25. 25

    Python Redis pubsub:发布类型时会发生什么变化?

  26. 26

    当有多个emacs初始化文件时会发生什么?

  27. 27

    使用另一个(现有)对象创建新对象时会发生什么?

  28. 28

    当类和函数具有相同的名称时会发生什么?

  29. 29

    当有人说计算机“挂起”或死机时会发生什么?

热门标签

归档