Reputation: 1001
In java, there is a constant for the max value of Long. Such as:
long minBillId = Long.MAX_VALUE
Is there a constant for the max value of long or int in Obj-C?
Upvotes: 33
Views: 26292
Reputation: 4164
If you import limits.h
you can call LONG_MAX
For reference this site shows how to get the max for all types as such:
#import <limits.h>
// ...
NSLog(@"CHAR_MIN: %c", CHAR_MIN);
NSLog(@"CHAR_MAX: %c", CHAR_MAX);
NSLog(@"SHRT_MIN: %hi", SHRT_MIN); // signed short int
NSLog(@"SHRT_MAX: %hi", SHRT_MAX);
NSLog(@"INT_MIN: %i", INT_MIN);
NSLog(@"INT_MAX: %i", INT_MAX);
NSLog(@"LONG_MIN: %li", LONG_MIN); // signed long int
NSLog(@"LONG_MAX: %li", LONG_MAX);
NSLog(@"ULONG_MIN not defined, it's always zero: %lu", 0);
NSLog(@"ULONG_MAX: %lu", ULONG_MAX); // unsigned long int
NSLog(@"LLONG_MIN: %lli", LLONG_MIN); // signed long long int
NSLog(@"LLONG_MAX: %lli", LLONG_MAX);
NSLog(@"ULLONG_MIN not defined, it's always zero: %llu", 0);
NSLog(@"ULLONG_MAX: %llu", ULLONG_MAX); // unsigned long long int
Upvotes: 59
Reputation: 39296
INT_MAX should resolve to 2147483647
This:
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[])
{
NSInteger foo = INT_MAX;
NSLog(@"foo: %li", foo); // li because 64 bit OSX cmd line app
return 0;
}
Outputs:
2012-03-18 13:58:54.509 Craplet[51324:707] foo: 2147483647
Upvotes: 12
Reputation: 89102
NSLog(@"INT_MIN: %i", INT_MIN);
NSLog(@"INT_MAX: %i", INT_MAX);
NSLog(@"LONG_MIN: %li", LONG_MIN);
NSLog(@"LONG_MAX: %li", LONG_MAX);
Upvotes: 3