Gets() y puts() se declaran en el archivo de encabezado stdio.h. Ambas funciones están involucradas en las operaciones de entrada/salida de las cadenas.
C obtiene() función
La función gets() permite al usuario ingresar algunos caracteres seguidos de la tecla Intro. Todos los caracteres ingresados por el usuario se almacenan en una matriz de caracteres. El carácter nulo se agrega a la matriz para convertirla en una cadena. El get() permite al usuario ingresar cadenas separadas por espacios. Devuelve la cadena ingresada por el usuario.
Declaración
char[] gets(char[]);
Leer cadena usando get()
#include void main () { char s[30]; printf('Enter the string? '); gets(s); printf('You entered %s',s); }
Producción
Enter the string? javatpoint is the best You entered javatpoint is the best
La función gets() es arriesgada de usar ya que no realiza ninguna verificación de límite de matriz y continúa leyendo los caracteres hasta que se encuentra la nueva línea (enter). Sufre un desbordamiento del búfer, que se puede evitar utilizando fgets(). fgets() se asegura de que no se lean más del límite máximo de caracteres. Considere el siguiente ejemplo.
#include void main() { char str[20]; printf('Enter the string? '); fgets(str, 20, stdin); printf('%s', str); }
Producción
Enter the string? javatpoint is the best website javatpoint is the b
Función C pone()
La función puts() es muy similar a la función printf(). La función puts() se utiliza para imprimir la cadena en la consola que se lee previamente mediante la función get() o scanf(). La función puts() devuelve un valor entero que representa la cantidad de caracteres que se imprimen en la consola. Dado que imprime un carácter de nueva línea adicional con la cadena, que mueve el cursor a la nueva línea en la consola, el valor entero devuelto por puts() siempre será igual al número de caracteres presentes en la cadena más 1.
Declaración
int puts(char[])
Veamos un ejemplo para leer una cadena usando get() e imprimirla en la consola 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; }
Producción:
Enter your name: Sonoo Jaiswal Your name is: Sonoo Jaiswal