fgetwc(3)

NOME
fgetwc, getwc - lê um caractere largo a partir de um fluxo de arquivo

BIBLIOTECA
Biblioteca C Padrão (libc, -lc)

SINOPSE
#include <stdio.h>
#include <wchar.h>

wint_t fgetwc(FILE *fluxo);
wint_t getwc(FILE *fluxo);

DESCRIÇÃO
A função fgetwc() é a equivalente para caracteres largos da função fgetc(3). Ela lê um caractere largo a partir de fluxo e o retorna. Se o fim do fluxo é encontrado, ou se ferror(stream) se torna verdadeiro, ela retorna WEOF. Se ocorre um erro de conversão para caracteres largos, ela seleciona errno para EILSEQ e retorna WEOF.

A função ou macro getwc() funciona de forma idêntica a fgetwc(). Ela pode ser implementada como uma macro, e pode avaliar seu argumento mais de uma vez. Não há razão ainda para usá-la.

Para contrapartes não bloqueantes, veja unlocked_stdio(3).

VALOR DE RETORNO
No caso de sucesso, fgetwc() retorna o próximo caractere largo que vem do fluxo. Do contrário, WEOF é retornado e errno é definido para indicar o erro.

ERROS
Além dos normais, há

EILSEQ
    Os dados obtidos a partir do fluxo de entrada não formam um caractere válido.

ATRIBUTOS
Para uma explicação dos termos usados nesta seção, consulte attributes(7).
Interface | Atributo | Valor
fgetwc(), getwc() | Thread safety | MT-Safe

PADRÕES
POSIX.1-2001, POSIX.1-2008, C99.

NOTAS
O comportamento de fgetwc() depende da categoria LC_CTYPE da localização atual.

Na ausência de informações adicionais passadas para a chamada de fopen(3), é razoável esperar que fgetwc() irá ler no momento uma sequência multibyte a partir do fluxo e então convertê-la para caracteres largos.

VEJA TAMBÉM
fgetws(3), fputwc(3), ungetwc(3), unlocked_stdio(3)

TRADUÇÃO
A tradução para português brasileiro desta página man foi criada por Rubens de Jesus Nogueira <darkseid99@usa.net>, André Luiz Fassone <lonely_wolf@ig.com.br> e Rafael Fontenelle <rafaelff@gnome.org>.

Esta tradução é uma documentação livre; leia a Licença Pública Geral GNU Versão 3 (https://www.gnu.org/licenses/gpl-3.0.html) ou posterior para as condições de direitos autorais. Nenhuma responsabilidade é aceita.

Se você encontrar algum erro na tradução desta página de manual, envie um e-mail para a lista de discussão de tradutores (debian-l10n-portuguese@lists.debian.org).