Reputation: 38359
Was reading the response by Shaggy Frog to this post and was intrigued by the following line of code:
NSLog(@"%@", [NSString stringWithFormat:@"%@:%*s%5.2f", key, padding, " ", [object floatValue]]);
I know string formatting is an age old art but I'm kinda doing the end around into Cocoa/Obj-C programming and skipped a few grades along the way. Where is a good (best) place to learn all the string formatting tricks allowed in NSString's stringWithFormat
? I'm familiar with Apple's String Format Specifiers page but from what I can tell it doesn't shed light on whatever is happening with %*s
or the %5.2f
(not to mention the 3 apparent placeholders followed by 4 arguments) above?!?
Upvotes: 2
Views: 1134
Reputation: 126105
The documentation of -stringWithFormat leads you to String Format Specifier which in turn sends you to the IEEE printf specification. That's about as much information as you'll ever want.
The only notable exception:
%@
Objective-C object, printed as the string returned by descriptionWithLocale: if available, or description otherwise. Also works with CFTypeRef objects, returning the result of the CFCopyDescription function.
NSLog(@"%@", someObject)
is safer than NSLog("someObject)
. The later might crash when someObject is nil:You might also be interested in the wikipedia page about string formatting.
Upvotes: 2