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 putc(
int c,
FILE *stream
);
wint_t putwc(
wchar_t c,
FILE *stream
);
Parametry
c
Znak do zapisania.
stream
Wskaźnik do FILE struktury.
Wartość zwracana
Zwraca zapisany znak. Aby wskazać błąd lub warunek końca pliku, putc i putchar zwrócić EOFwartość ; putwc i putwchar zwrócić WEOFwartość . W przypadku wszystkich czterech procedur użyj polecenia ferror lub feof , aby sprawdzić błąd lub koniec pliku. Jeśli przekazano wskaźnik null dla streamparametru , wywoływana jest nieprawidłowa procedura obsługi parametrów, zgodnie z opisem w temacie Weryfikacja parametrów. Jeśli wykonanie jest dozwolone do kontynuowania, te funkcje zwracają EOF wartość lub WEOF, i ustaw wartość errno EINVAL.
Aby uzyskać więcej informacji na temat kodów zwracanych, zobacz errno, _doserrno, _sys_errlisti _sys_nerr.
Uwagi
Rutyna putc zapisuje pojedynczy znak c w danych wyjściowych stream w bieżącym położeniu. Dowolna liczba całkowita może być przekazywana do putcmetody , ale zapisywane są tylko dolne 8 bitów. Ta rutyna jest identyczna putchar z procedurą putc( c, stdout ). W przypadku każdej procedury, jeśli wystąpi błąd odczytu, zostanie ustawiony wskaźnik błędu dla strumienia. putc i putchar są podobne odpowiednio do fputc i _fputchar, ale są implementowane zarówno jako funkcje, jak i jako makra (zobacz Zalecenia dotyczące wybierania między funkcjami i makrami). putwc i putwchar są odpowiednio wersjami putc znaków i putchar. putwc i putc zachowuje się identycznie, jeśli strumień jest otwarty w trybie ANSI. putc 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 _putc_nolock, _putwc_nolock.
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 |
|---|---|---|---|
_puttc |
putc |
putc |
putwc |
Wymagania
| Procedura | Wymagany nagłówek |
|---|---|
putc |
<stdio.h> |
putwc |
<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ą programu stdin, stdouti i stderrmuszą 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ść.
Biblioteki
Wszystkie wersje bibliotek czasu wykonywania języka C.
Przykład
// crt_putc.c
/* This program uses putc to write buffer
* to a stream. If an error occurs, the program
* stops before writing the entire buffer.
*/
#include <stdio.h>
int main( void )
{
FILE *stream;
char *p, buffer[] = "This is the line of output\n";
int ch;
ch = 0;
/* Make standard out the stream and write to it. */
stream = stdout;
for( p = buffer; (ch != EOF) && (*p != '\0'); p++ )
ch = putc( *p, stream );
}
Wynik
This is the line of output