9

嗨 :) 我正在尝试创建 NSStrings 的静态 C 数组。

这是我尝试过的:

static NSString** polygonNames = {@"Radical Isotope", @"Point", @"Line", @"Triangle", @"Square", @"Pentagon", @"Hextagon", @"Heptagon", @"Octagon", @"Nonagon", @"Decagon", @"Hendecagon", @"Dodecagon",  @"Tridecagon",  @"Tetradecagon",  @"Pentadecagon",  @"Hexadecagon",  @"Heptadecagon", @"Octadecagon", @"Enneadecagon"};

没有编译器错误,但我收到 41 个警告,所有这些都是以下三个之一:

"warning: initialization from incompatible pointer type"
"warning: excess elements in scalar initializer"
"warning: (near initialization for 'polygonNames')"

这让我相信当我使用这个类时,我会遇到大量的 sigbarts 或其他一些内存访问错误......

初始化 NSStrings 的静态数组的正确方法是什么(最好是内联的,我想使用 C 数组,而不是 NSArrays)?

4

1 回答 1

29

试试这个:

static NSString *polygonNames[] = { @"Radical Isotope", @"Point", @"Line", /* etc */ };
于 2012-05-04T00:13:24.610 回答