//NSNumber boxes a number of any kind
NSArray<NSNumber *> *list = @[
@((char)42),
@512,
@((long)777),
@3.14];
for (NSNumber *n in list) {
//objCType reports the stored kind:
//"c", "i", "q", "d"
const char *kind = n.objCType;
}