_outp, _outpw, _outpd


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 _outp, _outpw, _outpd.

Outputs, at a port, a byte (_outp), a word (_outpw), or a double word (_outpd).

System_CAPS_ICON_important.jpg Important

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

System_CAPS_ICON_important.jpg Important

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

      int _outp(  
unsigned short port,  
int databyte   
unsigned short _outpw(  
unsigned short port,  
unsigned short dataword   
unsigned long _outpd(  
unsigned short port,  
unsigned long dataword   


Port number.

databyte, dataword
Output values.

The functions return the data output. There is no error return.

The _outp, _outpw, and _outpd functions write a byte, a word, and a double word, respectively, to the specified output port. The port argument can be any unsigned integer in the range 0 – 65,535; databyte can be any integer in the range 0 – 255; and dataword can be any value in the range of an integer, an unsigned short integer, and an unsigned long integer, respectively.

Because these functions write directly to an I/O port, they cannot be used in user code in Windows NT, Windows 2000, Windows XP, and Windows Server 2003. For information about using I/O ports in these operating systems, search for "Serial Communications in Win32" at MSDN.

RoutineRequired header

For more compatibility information, see Compatibility.

All versions of the C run-time libraries.

Console and Port I/O
_inp, _inpw, _inpd