Udostępnij za pośrednictwem


fputc, fputwc

Zapisuje znak w strumieniu.

Składnia

int fputc(
   int c,
   FILE *stream
);
wint_t fputwc(
   wchar_t c,
   FILE *stream
);

Parametry

c
Znak do zapisania.

stream
Wskaźnik do FILE struktury.

Wartość zwracana

Każda z tych funkcji zwraca zapisany znak. W przypadku fputcparametru EOF zwracana wartość wskazuje błąd. W przypadku fputwcparametru WEOF zwracana wartość wskazuje błąd. Jeśli stream to NULL, te funkcje wywołują nieprawidłową procedurę obsługi parametrów, zgodnie z opisem w temacie Weryfikacja parametrów. Jeśli wykonanie jest dozwolone do kontynuowania, zwracają EOF i ustawiają wartość EINVALerrno .

Aby uzyskać więcej informacji na temat kodów zwracanych, zobacz errno, _doserrno, _sys_errlisti _sys_nerr.

Uwagi

Każda z tych funkcji zapisuje pojedynczy znak c do pliku na pozycji wskazanej przez skojarzony wskaźnik położenia pliku, jeśli jest zdefiniowany. Funkcje przesuwają wskaźnik odpowiednio. W fputc systemach i fputwcplik jest skojarzony z elementem stream. Jeśli plik nie może obsługiwać żądań pozycjonowania lub został otwarty w trybie dołączania, znak jest dołączany na końcu strumienia.

Obie funkcje zachowują się identycznie, jeśli strumień jest otwarty w trybie ANSI. fputc obecnie nie obsługuje danych wyjściowych do strumienia UNICODE.

Wersje z sufiksem _nolock są identyczne, z tą różnicą, że nie są chronione przed ingerencją innych wątków. Aby uzyskać więcej informacji, zobacz_fputwc_nolock_fputc_nolock .

Postępuj zgodnie z rutynowymi uwagami.

Procedura Uwagi
fputc putcOdpowiednik , ale zaimplementowany tylko jako funkcja, a nie jako funkcja i makro.
fputwc Wersja z szerokim znakiem .fputc c Zapisuje jako znak wielobajtowy lub szeroki znak, gdy stream jest otwarty w trybie tekstowym lub binarnym, odpowiednio.

Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.

Mapowania procedur tekstu ogólnego

Procedura TCHAR.H _UNICODE i _MBCS niezdefiniowane _MBCS Zdefiniowane _UNICODE Zdefiniowane
_fputtc fputc fputc fputwc

Wymagania

Function Wymagany nagłówek
fputc <stdio.h>
fputwc <stdio.h> lub <wchar.h>

Konsola nie jest obsługiwana w aplikacjach platformy platforma uniwersalna systemu Windows (UWP). Standardowe dojścia strumienia skojarzone z konsolą —stdinstdout i stderr— muszą zostać przekierowane, zanim funkcje czasu wykonywania języka C będą mogły ich używać w aplikacjach platformy UWP. Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.

Przykład

// crt_fputc.c
// This program uses fputc
// to send a character array to stdout.

#include <stdio.h>

int main( void )
{
   char strptr1[] = "This is a test of fputc!!\n";
   char *p;

   // Print line to stream using fputc.
   p = strptr1;
   while( (*p != '\0') && fputc( *(p++), stdout ) != EOF ) ;

}
This is a test of fputc!!

Zobacz też

We/Wy strumienia
fgetc, fgetwc
putc, putwc