_inp, _inpw, _inpd


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at _inp, _inpw, _inpd.

Inputs, from a port, a byte (_inp), a word (_inpw), or a double word (_inpd).


These functions are obsolete. Beginning in Visual Studio 2015, they are not available in the CRT.


This API cannot be used in applications that execute in the Windows Runtime. For more information, see CRT functions not supported with /ZW.


int _inp(   
   unsigned short port   
unsigned short _inpw(   
   unsigned short port   
unsigned long _inpd(   
   unsigned short port   


I/O port number.

Return Value

The functions return the byte, word, or double word read from port. There is no error return.


The _inp, _inpw, and _inpd functions read a byte, a word, and a double word, respectively, from the specified input port. The input value can be any unsigned short integer in the range 0 – 65,535.

Because these functions read directly from an I/O port, they might not be used in user code in Windows NT, Windows 2000, Windows XP, and Windows Server 2003.


Routine Required header
_inp <conio.h>
_inpw <conio.h>
_inpd <conio.h>

For more compatibility information, see Compatibility.


All versions of the C run-time libraries.

.NET Framework Equivalent

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

See Also

Console and Port I/O
_outp, _outpw, _outpd