puts, _putws

 

The latest version of this topic can be found at puts, _putws.

Writes a string to stdout.

Syntax

  
      int puts(  
   const char *str   
);  
int _putws(  
   const wchar_t *str   
);  

Parameters

str
Output string.

Return Value

Returns a nonnegative value if successful. If puts fails, it returns EOF; if _putws fails, it returns WEOF. If str is a null pointer, the invalid parameter handler is invoked, as described in Parameter Validation. If execution is allowed to continue, the functions set errno to EINVAL and return EOF or WEOF.

For information on these and other error codes, see _doserrno, errno, _sys_errlist, and _sys_nerr.

Remarks

The puts function writes str to the standard output stream stdout, replacing the string's terminating null character ('\0') with a newline character ('\n') in the output stream.

_putws is the wide-character version of puts; the two functions behave identically if the stream is opened in ANSI mode. puts doesn't currently support output into a UNICODE stream.

Under Windows 2000 and later, _putwch writes Unicode characters using the current CONSOLE LOCALE setting.

Generic-Text Routine Mappings

TCHAR.H routine _UNICODE & _MBCS not defined _MBCS defined _UNICODE defined
_putts puts puts _putws

Requirements

Routine Required header
puts <stdio.h>
_putws <stdio.h>

The console is not supported in Windows 8.x 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 8.x Store apps. For additional compatibility information, see Compatibility.

Libraries

All versions of the C run-time libraries.

Example

// crt_puts.c  
/* This program uses puts to write a string to stdout.  
 */  
  
#include <stdio.h>  
  
int main( void )  
{  
   puts( "Hello world from puts!" );  
}  

Output

Hello world from puts!  

.NET Framework Equivalent

System::Console::Write

See Also

Stream I/O
fputs, fputws
fgets, fgetws