UC3M

Grado en Ing. Telemática/Sist. Audiovisuales/Sist. de Comunicaciones

Arquitectura de Sistemas

Septiembre 2017 - Enero 2018

8.3. Funciones E/S para tipos de datos

En vez de leer carácter a carácter, podemos leer tipos de datos de una vez como enteros, cadenas de caracteres, etc. Para ello contamos con las funciones gets, que lee cadenas de caracteres, y scanf, que además maneja otros tipos de datos, y que veremos a continuación. De la misma manera, podemos escribir una cadena de caracteres con puts y otros tipos de datos de una vez con la función printf que ya habéis visto. Aquí hablaremos un poco más sobre ella.

8.3.1. La función gets

Para leer de entrada una línea carácter a carácter ya hemos visto las funciones getc y getchar. Para leer una línea completa contamos con diferentes funciones; una de ellas es gets:

#include <stdio.h>
char *gets(char *s);

Los caracteres leídos de entrada se guardan en el array s. La función deja de leer y añade el carácter de terminación '\0' cuando encuentra el carácter de nueva línea o el de fin de fichero EOF. Si todo va bien devuelve s, y si hay algún error devuelve un puntero a NULL.