iOS NSString stringWithFormat 参数特殊字符

NSString stringWithFormat的参数,特殊情况(NSInteger,用0补全2位等)

%d, %D: 32bit int

%u, %U: 32bit unsigned int

%x: 32bit 16进制,字母小写

%X:32bit 16进制,字母大写

%o, %O:32bit,8进制

%f,64bit,双精度浮点,double


全部占位符


然后,还有一些特殊的长度修饰符,放在上面的d,o,u,x之前,不能单独存在:

l: long或者 unsigned long

ll: long long或者 unsigned long long

L:long double

z: size_t,这个可以用来修饰d,然后对应NSInteger就好了


全部长度修饰符

注意一点,因为NSInteger在32位和64位的机器上对应的不一样,分别是 long 和 int,所以不能直接用%ld来表示NSInteger,要强转,如 [@"%ld", (long)i],比较麻烦,所以直接用%zd就好了


长度修饰符特殊注意

官方文档:https://developer.apple.com/library/content/documentation/CoreFoundation/Conceptual/CFStrings/formatSpecifiers.html#//apple_ref/doc/uid/TP40004265

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容