Do you prefer to see something like t_byte* (with typedef unsigned char t_byte) or unsigned char* in code?
t_byte*
typedef unsigned char t_byte
unsigned char*
I\'m leaning towards
Personally I prefer boost::int8_t and boost::uint8_t.
boost::int8_t
boost::uint8_t
If you don't want to use boost you could borrow boost\cstdint.hpp.
boost\cstdint.hpp
Another option is to use portable version of stdint.h (link from this answer).