I. Ao realizar uma operação com a função fgetc()em um arquivo, o programa estará realizando entrada de dados.
PORQUE
II. A função fgetc() permite que dados sejam copiados de um arquivo arbitrário (salvo em HD) para o programa em execução (salvo em memória)
Respostas
A linguagem C utiliza o conceito de fluxo (stream) de dados, que podem ser manipulados em dois diferentes tipos de fluxos: fluxos de texto e fluxos binários. O fluxo de texto é composto por uma seqüência de caracteres, que pode ou não ser dividida em linhas terminadas por um carácter de final de linha, mas esse caractere não é obrigatório. Já o fluxo binário é composto por uma seqüência de bytes lidos, sem tradução, diretamente do dispositivo externo.
As funções de Entrada e Saída normalmente utilizadas estão armazenadas na biblioteca stdio.h. Sendo algumas das mais comuns abaixo:
- putc(), fputc() - Escrever caractere em um arquivo
- getc(), fgetc() - Ler caractere de um arquivo
- fprintf(), fscanf() - Equivale ao printf e scanf, respectivamente, usando stream
- sscanf() - Equivale ao scanf() usando string
Com isso em mente, podemos analisar melhor as afimativas.
Afirmativa I é verdadeira, pois fgetc() é uma função de entrada de dados em C, já que ao abrir o arquivo e utilizar essa função estamos lendo os caracteres contidos nele.
Afirmativa II é verdadeira, pois ao abrirmos um arquivo salvo no HD, através da função fopen(), por exemplo, e atribuirmos o carácter lido por meio da função fgetc() a uma variável, o que for lido será copiado para essa variável e, assim, podemos utiliza-los ao longo do código, como no trecho de código abaixo, que mostra um contador de caracteres:
do {
caractere = fgetc(arquivo);
if (caractere == '\n') {
contagem++;
}
} while(caractere != EOF);
Espero ter ajudado!
Resposta:
caractere por caracterer
Explicação:
caractere por caracterer