Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
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 zdefiniowany |
_UNICODE zdefiniowany |
|---|---|---|---|
_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!!