objective-c - 使用 malloc 分配一个 NSStrings 数组?

标签 objective-c cocoa-touch

由于 NSSstring 的长度没有像 integer 或 double 那样定义,我是否冒着使用 malloc 为其分配 NSString 数组的问题的风险?

谢谢

即:

NSString ***nssName;
nssName = (NSString***) malloc(iN * sizeof(NSString*));

行的 for_loops 的最终结果是一个二维数组,所以它比 NSArray 更容易工作(代码更少)。

最佳答案

应该不会出现问题,分配一个 NSString 数组就像创建一个指向字符串对象的指针数组。指针是恒定长度的。我建议只使用 NSArray,但使用 NSString 的 C 数组仍然没问题。请注意,这可能已随 ARC 发生变化。

这是演示此操作的完全可接受的代码:

NSString** array = malloc(sizeof(NSString*) * 10); // Array of 10 strings
array[0] = @"Hello World"; // Put on at index 0
NSLog(@"%@", array[0]); // Log string at index 0

关于objective-c - 使用 malloc 分配一个 NSStrings 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6750013/

相关文章:

iphone - 如何检查 "UITextField with tag"上哪个 Textfield 标签被按下/触摸或单击的值?

ios - 具有合并更改的 CoreData 和 NSFetchedResultsController

objective-c - 使用核心动画旋转 UIImageView

iphone - 使用“保留”对象泄漏

ios - 一起使用 Nib 和 Storyboard : connect the nib's button target/action to a controller from the storyboard

iphone - 纹理图集应该具有的最大尺寸是多少?

objective-c - 如何将 GPUImage 添加到 iOS 项目?

ios - 编码/解码 NSImage

cocoa-touch - 放置大图像时 UIImageView 图像失真

ios - 从 iOS 应用程序在服务器上实现动态搜索的最佳方式是什么?