我已經嘗試了兩種方式的許多不同變體,並且無法獲得它來求和數組。它作爲指針傳入函數,需要計算平均值和返回值。C - 使用指針的數組的總和
unsigned char calcMean(unsigned char *buffer, int height, int width)
{
unsigned char mean, sum=0;
counter i, k;
int size;
size = width*height;
mean = 0;
for (i = 0; i < size; i++) {
sum += buffer[i];
}
/*
for(k=0;k<(width*height);k++)
{
mean = mean + *Buffer;
frameBuffer++;
printf("%d\n", mean);
}
*/
return sum;
}
'sum'可能是出於'無符號char'類型的範圍。考慮聲明爲像int這樣的更大數據類型的變量。 – sgarizvi
你會得到什麼輸出?在調試器下運行時,「buffer [i]」中有哪些值? – Steve
緩衝區是如何填充的?當你運行這段代碼時會發生什麼?你爲什麼總結字符而不是整數?你有沒有試過調試器? – Salgar