我有这个数组:
int8_t data[1024];
这个方法:
-(int) getPayLoad:(int8_t[1024])data {
for(int i=0; i<payload_size; i++) {
data[i] = payload[i];
}
return payload_size
}
我对数据数组参数进行了更改。我希望在方法终止后这些更改仍然存在。
答案 0 :(得分:1)
我想你想要一些约。像这样
- (size_t)getPayloadWithTarget:(int8_t *)target (int8_t *)source length:(size_t)length {
for (int i = 0; i < length; i++)
target[i] = source[i];
return length;
}
或者像那样
NSData *targetData = [NSData dataWithBytes:source length:length * sizeof(int8_t)];
target = (int8_t *)targetData.bytes;
(假设你不想在Objective-C中做malloc()/free()
。)