Se recomienda usar Visual Studio 2017

_fputc_nolock, _fputwc_nolock

 

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte Documentación de Visual Studio 2017 RC.

Escribe un carácter en un flujo sin bloquear el subproceso.

int _fputc_nolock(  
   int c,  
   FILE *stream   
);  
wint_t _fputwc_nolock(  
   wchar_t c,  
   FILE *stream   
);  

Parámetros

c
Carácter que se va a escribir.

stream
Puntero a la estructura de FILE.

Cada una de estas funciones devuelve el carácter escrito. Para obtener información de error, consulte fputc, fputwc.

_fputc_nolock y _fputwc_nolock son exactamente iguales que fputc y fputwc, respectivamente, salvo que no están protegidas contra interferencias de otros subprocesos. Pueden ser más rápidas porque no incurren en la sobrecarga de bloquear otros subprocesos. Use estas funciones solo en contextos seguros para subprocesos como aplicaciones de un único subproceso o donde el ámbito de llamada ya controle el aislamiento de subprocesos.

Las dos funciones se comportan igual si el flujo se abre en modo ANSI. _fputc_nolock no admite actualmente la salida a un flujo UNICODE.

Asignaciones de rutina de texto genérico

Rutina Tchar.h_UNICODE y _MBCS no definidos_MBCS definido_UNICODE definido
_fputtc_nolock_fputc_nolock_fputc_nolock_fputwc_nolock
FunciónEncabezado necesario
_fputc_nolock<stdio.h>
_fputwc_nolock<stdio.h> o <wchar.h>

La consola no se admite en las aplicaciones de Tienda Windows 8.x. Se deben redirigir los identificadores estándar de flujo que están asociados a la consola, stdin, stdout y stderr, antes de que las funciones en tiempo de ejecución de C puedan usarlos en aplicaciones de Tienda Windows 8.x. Para obtener más información sobre compatibilidad, vea Compatibility.

// crt_fputc_nolock.c  
// This program uses _fputc_nolock  
// to send a character array to stdout.  
  
#include <stdio.h>  
  
int main( void )  
{  
   char strptr1[] = "This is a test of _fputc_nolock!!\n";  
   char *p;  
  
   // Print line to stream using fputc.   
   p = strptr1;  
   while( (*p != '\0') && _fputc_nolock( *(p++), stdout ) != EOF ) ;  
  
}  

This is a test of _fputc_nolock!!  

E/S de secuencia
fgetc, fgetwc
putc, putwc

Mostrar: