Seja muito bem vindo à aula 131 do nosso curso gratuito de programação com a linguagem C.
Outra função, agora bem segura, que pode ser utilizada para a leitura de strings a partir do teclado é a função fgets().
Por padrão esta função foi desenvolvida para leitura em arquivos, por isso o f inicial (de file, arquivo em inglês).
Sua utilização é simples. Para tal, precisamos passar para a função três parâmetros:
- o nome do vetor onde salvaremos a string lida;
- a quantidade máxima de caracteres a ser lido e;
- de onde será lido, neste caso, do buffer do teclado.
Para indicar que a leitura será feita a partir do buffer do teclado (entrada padrão do computador) basta fazer uso de uma constante já definida na linguagem C para esta finalidade, chamada stdin, assim:
// lendo uma string do teclado com a função fgets() char palavras[100]; fgets(palavras, 100, stdin);
Lendo uma string com a função fgets()
#include <stdio.h> #include <stdlib.h> int main(){ char palavras[50] = {"Oi. Vamos aprender a programar com a linguagem C?"}; printf("Digite seu nome: "); fgets(palavras, 50, stdin);// file printf("%s\n\n", palavras); return 0; }