나는 C 언어에서 부호없는 정수 배열에 대한 포인터를 취합니다. 입력은 일종의 필터링을 수행하고 결과를 동일한 포인터 배열로 반환합니다. 나는 이것을했다 :uint 배열에 대한 포인터
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 크기의 배열을 할당하고 포인터 배열 값을 사용하여 initiliazing하는 대신이 로컬 복사본을 사용하려고합니다. 이론적으로 이것은 나에게 의미가 있지만 이것이 최선의 방법인지 확실하지 않습니다.
이 문제를 해결할 수있는 모든 포인터/코드는 높이 평가됩니다. 도와주세요.
미리 감사드립니다.
이 어서, 당신의 접근 방식은 확인 들린다. – alk
"uint 배열에 대한 포인터"가 없습니다. 당신은 방금 "포인터에 대한 포인터"를 가지고 있습니다. – newacct