Main Content


16-bit unsigned integer arrays


Variables in MATLAB® of data type (class) uint16 are stored as 2-byte (16-bit) unsigned integers. For example:

y = uint16(10);
whos y
  Name      Size            Bytes  Class     Attributes

  y         1x1                 2  uint16                     

For more information on integer types, see Integers.


Some array creation functions allow you to specify the data type. For instance, zeros(100,'uint16') creates a 100-by-100 matrix of zeros of type uint16.

If you have an array of a different type, such as double or single, then you can convert that array to an array of type uint16 by using the uint16 function.



Y = uint16(X) converts the values in X to type uint16. Values outside the range [0,216-1] map to the nearest endpoint.

Input Arguments

expand all

Input array, specified as a scalar, vector, matrix, or multidimensional array.

Data Types: double | single | int8 | int16 | int32 | int64 | uint8 | uint32 | uint64 | logical | char


collapse all

Convert a double-precision variable to a 16-bit unsigned integer.

x = 100;
xtype = class(x)
xtype = 
y = uint16(x)
y = uint16

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

GPU Code Generation
Generate CUDA® code for NVIDIA® GPUs using GPU Coder™.

Version History

Introduced before R2006a