_putw
Writes an integer to a stream.
Syntax
int _putw(
int binint,
FILE *stream
);
Parameters
binint
Binary integer to be output.
stream
Pointer to the FILE
structure.
Return value
Returns the value written. A return value of EOF
might indicate an error. Because EOF
is also a legitimate integer value, use ferror
to verify an error. If stream
is a null pointer, the invalid parameter handler is invoked, as described in Parameter validation. If execution is allowed to continue, this function sets errno
to EINVAL
and returns EOF
.
For information about these and other error codes, see errno
, _doserrno
, _sys_errlist
, and _sys_nerr
.
Remarks
The _putw
function writes a binary value of type int
to the current position of stream. _putw
doesn't affect the alignment of items in the stream nor does it assume any special alignment. _putw
is primarily for compatibility with previous libraries. Portability problems might occur with _putw
because the size of an int
and the ordering of bytes within an int
differ across systems.
By default, this function's global state is scoped to the application. To change this behavior, see Global state in the CRT.
Requirements
Routine | Required header |
---|---|
_putw |
<stdio.h> |
For more compatibility information, see Compatibility.
Libraries
All versions of the C run-time libraries.
Example
// crt_putw.c
/* This program uses _putw to write a
* word to a stream, then performs an error check.
*/
#include <stdio.h>
#include <stdlib.h>
int main( void )
{
FILE *stream;
unsigned u;
if( fopen_s( &stream, "data.out", "wb" ) )
exit( 1 );
for( u = 0; u < 10; u++ )
{
_putw( u + 0x2132, stream ); /* Write word to stream. */
if( ferror( stream ) ) /* Make error check. */
{
printf( "_putw failed" );
clearerr_s( stream );
exit( 1 );
}
}
printf( "Wrote ten words\n" );
fclose( stream );
}
Output
Wrote ten words