mic*_*den 5 arrays xcode initialization objective-c
我是来自Java,而且我对Objective C很新.无论如何,我有这个静态方法,它旨在制作一个数组的副本 (如果有更好的方法来实现这一点,请告诉我,但我我更多地问这个问题,以便找出我为什么会遇到这个错误,以及如何在将来避免这样的错误.)我遇到了一些问题,但就在我认为我把它们全部整理好的时候,我得到了这个错误看起来像XCode http://i43.tinypic.com/35nal3n.png
这是界面中的方法:
+ (float[]) copyArray: (float[]) array withLength: (int) length;
Run Code Online (Sandbox Code Playgroud)
以下是实现中的方法:
+ (float[]) copyArray: (float[]) array withLength: (int) length
{
float copiedArray[length];
for (int i = 0; i < length; i++)
{
copiedArray[i] = array[i];
}
return copiedArray;
}
Run Code Online (Sandbox Code Playgroud)
如果您真正想要的是将前N个元素从一个C数组复制到另一个已存在的数组中,那么最好的方法就是简单地使用memcpy:
memcpy(targetArray, sourceArray, sizeof(sourceArray[0]) * numElements);
Run Code Online (Sandbox Code Playgroud)
在sizeof(sourceArray[0])计算阵列中的类型的字节大小(在你的情况下,它等同于sizeof(float).
方法/函数无法返回 C 数组。你应该做这个
+ (void) copyArrayFrom:(float *)array to:(float *)toArray withLength: (unsigned) length
{
for (int i = 0; i < length; i++)
{
toArray [i] = array[i];
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8827 次 |
| 最近记录: |