Search code examples
objective-cnsinteger

Can you set an NSInteger as NULL in Objective-C?


I am trying to set an NSInteger to NULL. Though the compiler does not give any error, but I am not sure if this is the right way to do it. Can you set an NSInteger as NULL in ios..? Or is it forbidden for some reason..? Or Should I set it to Nil..? Which is better practice..?

Thanks


Solution

  • I think you are confusing NSInteger with an Objective-C class.

    NSInteger is simply a typedefd integer:

    #if __LP64__ || NS_BUILD_32_LIKE_64
      typedef long NSInteger;
      typedef unsigned long NSUInteger;
    #else
      typedef int NSInteger;
      typedef unsigned int NSUInteger;
    #endif
    

    If you want something that holds a number which can be nil then you probably want NSNumber.