#define	SIZE	2

static unsigned char array[SIZE];

typedef struct
{
	unsigned char min;
	unsigned char max;
} limit;

static const limit array_limit[SIZE] = 
{
	{ min: 0, max: 200	},
	{ min: 0, max: 200	},
};

void array_dec (unsigned char index)
{
	if (array[index]-- == array_limit[index].min)
		array[index] = array_limit[index].max;
}

int main ()
{
	array_dec (1);
	array_dec (1);
	return 0;
}

