Unsigned char
From Just Solve the File Format Problem
				
								
				(Difference between revisions)
				
																
				
				
								
				 (Created page with "{{FormatInfo | name           = unsigned char | formattype     = electronic | subcat         = Data types | subcat2        = C++ data types | subcat3        =  | subcat4      ...")  | 
			|||
| Line 37: | Line 37: | ||
Operation 255+1 will likely cause a "roll over" and the result will be 0, but it is unwise to count on that when writing multi-architecture code, as it is possible to define byte in a processor to be more than 8 bits.  | Operation 255+1 will likely cause a "roll over" and the result will be 0, but it is unwise to count on that when writing multi-architecture code, as it is possible to define byte in a processor to be more than 8 bits.  | ||
| − | |||
| − | |||
| − | |||
==Other C++ datatypes of the same size==  | ==Other C++ datatypes of the same size==  | ||
Revision as of 12:47, 12 May 2015
signed char is the smallest unsigned integer type in C++, it often gets typedef-ed as "byte" (alternatively people use signed char for that reason) because it uses one byte of memory (depending upon what architecture defines it as, but no less than 8 bits). The range of values that can definitely be stored in this type is 0 – 255.
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | value | 
|---|---|---|---|---|---|---|---|---|
| 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 128 | 
| 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 127 | 
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 
| 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 255 | 
Operation 255+1 will likely cause a "roll over" and the result will be 0, but it is unwise to count on that when writing multi-architecture code, as it is possible to define byte in a processor to be more than 8 bits.
Other C++ datatypes of the same size
Other C++ data types storing unsigned integers
- unsigned short no less than 16 bits, no less than char
 - unsigned (int) no less than 16 bits, no less than short
 - unsigned long no less than 32 bits, no less than int
 - unsigned long long no less than 64 bits, no less than long