Unsigned char

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(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.
 
==Relationship with char==
 
'''unsigned char''' uses exact same amount of memory as '''char''', the main difference happens during the output; '''char''' gets interpreted as the code of [[ASCII]] character, while '''unsigned char''' is interpreted as non-negative binary integer.
 
  
 
==Other C++ datatypes of the same size==
 
==Other C++ datatypes of the same size==

Revision as of 12:47, 12 May 2015

File Format
Name unsigned char
Ontology


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

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox