入力が何らかのフィルタリングを行い、結果を同じポインター配列に戻すときに、符号なし整数の配列へのポインターを受け取るCでアルゴリズムを作成しています。これは私がしました:
static void Filtering(Inst_t *psStruct, uint8 *arraypointer)
{
uint8 *arrayFilter;
uint32 i, n = 0, uCount;
uCount = psStruct->uCount;
for (i = 0; i < uCount; i++)
{
arraypointer[i] = (arraypointer[i] + arraypointer[i - 1] + arraypointer[i + 1])/3;
}
}
データが上書きされます。しかし、私はそれが起こることを望んでいません。したがって、ポインターが指している配列データのローカルコピーを作成し、それを使用して平均を計算し、計算された値を返します。
*arraypointer のサイズの配列を割り当て、ポインター配列の値で初期化し、代わりにこのローカル コピーを使用することを考えています。理論的には、これは理にかなっていますが、これが最善の方法であるかどうかはわかりません。
この問題に対処するためのポインタ/コードは高く評価されています。助けてください。
前もって感謝します。