Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Zapíše znak do datového proudu bez uzamčení.
Syntaxe
int _fputc_nolock(
int c,
FILE *stream
);
wint_t _fputwc_nolock(
wchar_t c,
FILE *stream
);
Parametry
c
Znak, který se má napsat.
stream
Ukazatel na FILE strukturu.
Vrácená hodnota
Každá z těchto funkcí vrátí znak napsaný. Informace o chybě naleznete v tématu fputc, fputwc.
Poznámky
_fputc_nolock a _fputwc_nolock jsou identické s fputc jinými fputwcvlákny, s tím rozdílem, že nejsou chráněny před rušením jinými vlákny. Můžou být rychlejší, protože neúčtují režijní náklady na uzamčení jiných vláken. Tyto funkce používejte pouze v kontextech bezpečných pro přístup z více vláken, jako jsou aplikace s jedním vláknem, nebo v případě, že volající obor již zpracovává izolaci vláken.
Dvě funkce se chovají stejně, pokud je datový proud otevřen v režimu ANSI. _fputc_nolock v současné době nepodporuje výstup do datového proudu UNICODE.
Ve výchozím nastavení je globální stav této funkce vymezen na aplikaci. Chcete-li toto chování změnit, přečtěte si téma Globální stav v CRT.
Mapování rutin obecného textu
| Rutina Tchar.h | _UNICODE a _MBCS není definován |
_MBCS definovaný |
_UNICODE definovaný |
|---|---|---|---|
_fputtc_nolock |
_fputc_nolock |
_fputc_nolock |
_fputwc_nolock |
Požadavky
| Function | Požadovaný hlavičkový soubor |
|---|---|
_fputc_nolock |
<stdio.h> |
_fputwc_nolock |
<stdio.h> nebo <wchar.h> |
Konzola není podporována v aplikacích pro Univerzální platforma Windows (UPW). Standardní stream zpracovává, které jsou přidružené ke konzole –stdinstdout a stderr– musí být přesměrovány, aby je funkce běhu jazyka C mohly používat v aplikacích pro UPW. Další informace o kompatibilitě najdete v tématu Kompatibilita.
Příklad
// 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!!