Objective C中的浮点值数组

Dev*_*Dev 5 arrays floating-point objective-c

如何创建浮点数数组Objective C?可能吗?谁能告诉我怎么办?

tro*_*foe 23

您可以以不同的方式创建动态数组(在运行时决定的大小,而不是编译时间),具体取决于您要使用的语言:

Objective-C的

NSArray *array = [[NSArray alloc] initWithObjects:
    [NSNumber numberWithFloat:1.0f],
    [NSNumber numberWithFloat:2.0f],
    [NSNumber numberWithFloat:3.0f],
    nil];
...
[array release];    // If you aren't using ARC
Run Code Online (Sandbox Code Playgroud)

或者,如果要在创建后更改它,请使用NSMutableArray:

NSMutableArray *array = [[NSMutableArray alloc] initWithCapacity:0];
[array addObject:[NSNumber numberWithFloat:1.0f]];
[array addObject:[NSNumber numberWithFloat:2.0f]];
[array addObject:[NSNumber numberWithFloat:3.0f]];
...
[array replaceObjectAtIndex:1 withObject:[NSNumber numberWithFloat:99.9f]];
...
[array release];    // If you aren't using ARC
Run Code Online (Sandbox Code Playgroud)

或者使用new-ish Objective-C文字语法:

NSArray *array = @[ @1.0f, @2.0f, @3.0f ];
...
[array release];    // If you aren't using ARC
Run Code Online (Sandbox Code Playgroud)

C

float *array = (float *)malloc(sizeof(float) * 3);
array[0] = 1.0f;
array[1] = 2.0f;
array[2] = 3.0f;
...
free(array);
Run Code Online (Sandbox Code Playgroud)

C++/Objective-C++

std::vector<float> array;
array[0] = 1.0f;
array[1] = 2.0f;
array[2] = 3.0f;
Run Code Online (Sandbox Code Playgroud)