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

你可能感兴趣的:(iOS NSString stringWithFormat 参数特殊字符)