With the 64 bit version of iOS we can\'t use %d and %u anymore to format NSInteger and NSUInteger. Because for 64 bit tho
%d
%u
NSInteger
NSUInteger
According to Building 32-bit Like 64-bit, another solution is to define the NS_BUILD_32_LIKE_64 macro, and then you can simply use the %ld and %lu specifiers with NSInteger and NSUInteger without casting and without warnings.
NS_BUILD_32_LIKE_64
%ld
%lu