logo

Funções get() e puts() em C

Os get() e puts() são declarados no arquivo de cabeçalho stdio.h. Ambas as funções estão envolvidas nas operações de entrada/saída das strings.

Função C obtém ()

A função get() permite ao usuário inserir alguns caracteres seguidos da tecla Enter. Todos os caracteres inseridos pelo usuário são armazenados em uma matriz de caracteres. O caractere nulo é adicionado ao array para torná-lo uma string. O get() permite ao usuário inserir strings separadas por espaço. Ele retorna a string inserida pelo usuário.

Declaração

 char[] gets(char[]); 

Lendo string usando get()

 #include void main () { char s[30]; printf('Enter the string? '); gets(s); printf('You entered %s',s); } 

Saída

 Enter the string? javatpoint is the best You entered javatpoint is the best 

A função get() é arriscada de usar, pois não executa nenhuma verificação de limite de array e continua lendo os caracteres até que a nova linha (enter) seja encontrada. Ele sofre de buffer overflow, que pode ser evitado usando fgets(). O fgets() garante que não sejam lidos mais do que o limite máximo de caracteres. Considere o seguinte exemplo.

 #include void main() { char str[20]; printf('Enter the string? '); fgets(str, 20, stdin); printf('%s', str); } 

Saída

 Enter the string? javatpoint is the best website javatpoint is the b 

Função put() C

A função puts() é muito semelhante à função printf(). A função puts() é usada para imprimir a string no console que é lida anteriormente usando a função get() ou scanf(). A função puts() retorna um valor inteiro que representa o número de caracteres que estão sendo impressos no console. Como imprime um caractere de nova linha adicional com a string, que move o cursor para a nova linha no console, o valor inteiro retornado por puts() será sempre igual ao número de caracteres presentes na string mais 1.

Declaração

 int puts(char[]) 

Vamos ver um exemplo para ler uma string usando get() e imprimi-la no console usando puts().

 #include #include int main(){ char name[50]; printf('Enter your name: '); gets(name); //reads string from user printf('Your name is: '); puts(name); //displays string return 0; } 

Saída:

 Enter your name: Sonoo Jaiswal Your name is: Sonoo Jaiswal