if you look at the function i produced below, (intensity) i want to increment that element of intensity_histogram using the pointer so *(pointer+1)++ means i intend to increment element 1 of array_histogram, however the program doesnt allow me to do so, errors are formed, hence my code does not allow me to compile, errors ar at each pointer increment, please help
#include <stdio.h>
#include <stdlib.h>
int mean_func (int array[16]);
void intensity(int array[16], int *pointer);
int main()
{
int pix_in[4][4] = {{0,1,2,3},{4,5,6,7},{0,1,2,3},{4,5,6,7}};
int pix_out[16];
int i;
int j;
int n = 0;
int mean;
int intensity_histogram[7];
for(i =0;i <4; i++ )
{//open for
for(j=0;j<4;j++)
{//open second for
pix_out[n] = pix_in[i][j];
n++;
}//close second for
}//close for
for(i = 0; i<16; i++)
mean = mean_func(pix_out);
intensity(pix_out, intensity_histogram);
for(i=0;i<8;i++)
printf("%d\n", intensity_histogram[i]);
return 0;
}
int mean_func (int array[16])
{
int sum = 0;
int i;
int j;
int average;
for(i = 0; i<16; i++)
{
sum = sum + array[i];
}
average = sum/16;
return average;
}
void intensity (int array[16], int *pointer)
{//open intensity
int i;
for(i = 0 ; i<16;i ++)
{//open for
if(array[i]== 0)
{//open first if
*pointer++;
}//close first if
else if( array[i]== 1)
{
*(pointer+1)++;
}
else if( array[i]== 2)
{
*(pointer + 2)++;
}
else if( array[i]== 3)
{
*(pointer + 3)++;
}
else if( array[i]== 4)
{
*(pointer + 4)++;
}
else if( array[i]== 5)
{
*(pointer + 5)++;
}
else if( array[i]== 6)
{
*(pointer + 6)++;
}
else if( array[i]== 7)
{
*(pointer + 7)++;
}
}//close for
}//close intensity */