Hello,
Suppose I want to store a big big array, in progmem. I will be limited by the maximum size of an array, that is, 32767 bytes.
From what I understand, the maximum size of an array is defined by the maximum value that size_t can hold. So this would mean that size_t was defined as a signed int. But by looking into stddef.h I see:
#ifndef __SIZE_TYPE__
#define __SIZE_TYPE__ long unsigned int
#endif
#if !(defined (__GNUG__) && defined (size_t))
typedef __SIZE_TYPE__ size_t;
I'm not sure to understand exactly, but doesn't this mean size_t was defined as an unsigned long ? And if so, why am I unable to make arrays larger than 32767 bytes?
My main question is of course: is it possible to increase the maximum size of an array (and how) ?
Thanks