有没有快速的方法可以获得NSString数组中的字符串数量?
NSString *s[2]={@"1", @"2"}
我想从中检索 2 的长度。我有类似的东西(s.size) 我知道有-length方法但是字符串不是字符串数组。 我是Xcode的新手,请保持温和。
答案 0 :(得分:20)
使用NSArray
NSArray *stringArray = [NSArray arrayWithObjects:@"1", @"2", nil];
NSLog(@"count = %d", [stringArray count]);
答案 1 :(得分:4)
是的,有办法。请注意,仅当数组不是使用malloc
动态创建时才有效。
NSString *array[2] = {@"1", @"2"}
//size of the memory needed for the array divided by the size of one element.
NSUInteger numElements = (NSUInteger) (sizeof(array) / sizeof(NSString*));
这种类型的数组对于C来说是典型的,因为Obj-C是C的超集,所以使用它是合法的。你只需要格外小心。
答案 2 :(得分:1)
sizeof(s)/sizeof([NSString string]);
答案 3 :(得分:0)
试图在objective-c中搜索_countf,但它似乎不存在,所以假设sizeof和typeof运算符正常工作并且你传递了有效的c数组,那么以下内容可能会有效。
#define _countof( _obj_ ) ( sizeof(_obj_) / (sizeof( typeof( _obj_[0] ))) )
NSString *s[2]={@"1", @"2"} ;
NSInteger iCount = _countof( s ) ;