Condividi tramite


_fputc_nolock, _fputwc_nolock

Scrive un carattere in un flusso senza bloccare.

Sintassi

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

Parametri

c
Carattere da scrivere.

stream
Puntatore alla struttura FILE.

Valore restituito

Ognuna di queste funzioni restituisce il carattere scritto. Per informazioni sull'errore, vedere fputc, fputwc.

Osservazioni:

_fputc_nolock e _fputwc_nolock sono rispettivamente identici a fputc e fputwc, ad eccezione del fatto che non sono protetti da interferenze da altri thread. Potrebbero essere più veloci perché non comportano il sovraccarico di blocco di altri thread. Utilizzare queste funzioni solo in contesti thread-safe come applicazioni a thread singolo o dove l'ambito chiamante già gestisce l'isolamento del thread.

Le due funzioni si comportano in modo identico se il flusso viene aperto in modalità ANSI. _fputc_nolock non supporta attualmente l'output in un flusso UNICODE.

Per impostazione predefinita, lo stato globale di questa funzione è limitato all'applicazione. Per modificare questo comportamento, vedere Stato globale in CRT.

Mapping di routine di testo generico

Routine Tchar.h _UNICODE e _MBCS non definito _MBCS definito _UNICODE definito
_fputtc_nolock _fputc_nolock _fputc_nolock _fputwc_nolock

Requisiti

Funzione Intestazione obbligatoria
_fputc_nolock <stdio.h>
_fputwc_nolock <stdio.h> o <wchar.h>

La console non è supportata nelle app piattaforma UWP (Universal Windows Platform) (UWP). Gli handle di flusso standard associati alla console,stdinstdout e stderr, devono essere reindirizzati prima che le funzioni di runtime C possano usarle nelle app UWP. Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).

Esempio

// 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!!

Vedi anche

I/O di flusso
fgetc, fgetwc
putc, putwc