What to use double, long double, CGFLoat or NSNumber? I am writing a program that does math on the iPhone. I need to have at least 15 digit precision in the math which is basic and not heavy iteration (thus speed is not big factor). I am confused in what to do math in Objective-C. Should I use primitives as Double and Long double or use object wrappers like NSNumber (which I use in the end to get correct localization formatting). I have not been able to get much info on this and must books on iOS development seem to skip these subjects. Please recommend what to use. For example if I use Long Double I get 18 digit precision, but can I use the math.h libraries? Are the math.h libraries the only way to do math on iPhone or should I use OpenGL math?