I am writing a utility that deals with reading/parsing 3rd party files generally byte by byte. The utility deals with some basic encryption (XORing each byte), switching between 1 byte and 2 byte fields (where the 2 byte fields are read using little-endian). There are a few adhoc "compression" schemes along the way, and a compressed version of ASCII strings (instead of spaces, the left most bit is set to indicate a following space).
Anyway, depending on the byte or bytes read I can translate this into meaningful data using the documented file structures. The utility runs in Windows but I would like to support Mac and Linux operating systems too.
I am using uint8_t as the type when dealing on the byte level. In C# I can use the byte data type, but in C++ (for which this utility is now based upon) I do not have that luxury.
Originally I was using an unsigned character but I am not sure this will always be "8 bits" across other platforms. I switched over to uint8_t.
I am sorry if this seems like a poor question but I am not as confident in C++ as I am in C#.