is there any difference between these two lines?
unsigned char foo[32768];
and
u8 foo[32768];
Yes.
great.
u8 is prettier ^o^
If the compiler have <stdint.h>, then you have access to the uint8_t data type and a number of other types of fixed size or a minimum size or an optimum size.