_outp, _outpw, _outpd

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

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
    Port number.

  • databyte, dataword
    Output values.

Return Value

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.



Required header







For more compatibility information, see Compatibility in the Introduction.


All versions of the C run-time libraries.

See Also


Console and Port I/O

_inp, _inpw, _inpd