This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.


Convert to 16-bit unsigned integer


intArray = uint16(array)


intArray = uint16(array) converts the elements of an array into unsigned 16-bit (2-byte) integers of class uint16.

Input Arguments


Array of any numeric class, such as single or double. If array is already of class uint16, the uint16 function has no effect.

Output Arguments


Array of class uint16. Values range from 0 to 216 – 1.

The uint16 function maps any values in array that are outside the limit to the nearest endpoint. For example,

uint16(2^16)   %  2^16 = 65536


ans =


Convert a double array to uint16:

mydata = uint16(magic(100));


When preallocating integer arrays, specify the class in the call to functions that support a class name input (such as zeros, ones or eye), rather than calling an integer conversion function. For example,

I = uint16(zeros(100));     % Creates an intermediate array

is not as efficient as

I = zeros(100, 'uint16');   % Preferred 

Extended Capabilities

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

Introduced before R2006a

Was this topic helpful?