A função fgets () em C ++ lê um número máximo especificado de caracteres de um determinado fluxo de arquivo.
protótipo fgets ()
char * fgets (char * str, int count, FILE * stream);
A fgets()
função lê um máximo de count-1
caracteres de um determinado fluxo de arquivo e os armazena no array apontado por str.
A análise continua até que ocorra o final do arquivo ou um caractere de nova linha ( n) seja encontrado. O array str conterá o caractere de nova linha também, caso seja encontrado. Se nenhum erro ocorrer, um caractere nulo será escrito no final de str.
É definido no arquivo de cabeçalho.
Parâmetros fgets ()
- str: Ponteiro para uma matriz de caracteres que armazena o conteúdo do arquivo.
- contagem: número máximo de caracteres a serem escritos.
- stream: O fluxo de arquivo para ler os personagens.
fgets () Valor de retorno
- Em caso de sucesso, a função fgets () retorna str e em caso de falha retorna um ponteiro nulo.
- Se a falha for causada devido à condição de fim do arquivo, ele define o
eof
indicador. Nesse caso, o conteúdo de str não é alterado. - Se a falha for causada por algum outro erro, ele define o indicador de erro. Nesse caso, o conteúdo de str é indeterminado. Eles podem nem mesmo ter terminação nula.
Exemplo: como funciona a função fgets ()
#include #include using namespace std; int main() ( int count = 10; char str(10); FILE *fp; fp = fopen("file.txt","w+"); fputs("An example file", fp); fputs("Filename is file.txt", fp); rewind(fp); while(feof(fp) == 0) ( fgets(str,count,fp); cout << str << endl; ) fclose(fp); return 0; )
Quando você executa o programa, uma possível saída será:
Um exemplo de nome de arquivo de arquivo é file.t xt