fputs, fputws

Writes a string to a stream.

int fputs( 
   const char *str,
   FILE *stream 
);
int fputws( 
   const wchar_t *str,
   FILE *stream 
);

Parameters

  • str
    Output string.

  • stream
    Pointer to FILE structure.

Return Value

Each of these functions returns a nonnegative value if it is successful. On an error, fputs and fputws return EOF. If str or stream is a null pointer, these functions invoke the invalid parameter handler, as described in Parameter Validation. If execution is allowed to continue, these functions set errno to EINVAL and then fputs returns EOF, and fputws returns WEOF.

See _doserrno, errno, _sys_errlist, and _sys_nerr for more information on these, and other, error codes.

Remarks

Each of these functions copies str to the output stream at the current position. fputws copies the wide-character argument str to stream as a multibyte-character string or a wide-character string according to whether stream is opened in text mode or binary mode, respectively. Neither function copies the terminating null character.

The two functions behave identically if the stream is opened in ANSI mode. fputs does not currently support output into a UNICODE stream.

Generic-Text Routine Mappings

TCHAR.H routine

_UNICODE & _MBCS not defined

_MBCS defined

_UNICODE defined

_fputts

fputs

fputs

fputws

Requirements

Function

Required header

fputs

<stdio.h>

fputws

<stdio.h> or <wchar.h>

The console is not supported in Windows Store apps. The standard stream handles that are associated with the console—stdin, stdout, and stderr—must be redirected before C run-time functions can use them in Windows Store apps. For additional compatibility information, see Compatibility.

Example

// crt_fputs.c
// This program uses fputs to write
// a single line to the stdout stream.

#include <stdio.h>

int main( void )
{
   fputs( "Hello world from fputs.\n", stdout );
}
Hello world from fputs.

.NET Framework Equivalent

System::IO::StreamWriter::Write

See Also

Reference

Stream I/O

fgets, fgetws

gets, _getws

puts, _putws