You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
MIGUEL Á. TOLEDO MARTÍNEZ<br />
LO QUE NECESITA SABER<br />
Antes de que continúe con la siguiente lección, asegúrese de haber comprendido los<br />
siguientes conceptos:<br />
C++ proporciona el flujo de entrada cin para introducir datos por el teclado.<br />
El objeto de flujo de entrada cin (conectado normalmente al teclado) se utiliza para introducir datos.<br />
Es posible introducir varios elementos de datos concatenando operadores de extracción de flujo (>>)<br />
Cuando su programa utiliza cin para leer datos, su programa debe especificar una o más variables en<br />
la que cin colocará los datos.<br />
Para asignar entrada a una variable, su programa debe usar cin con el operador de extracción (>>)<br />
Cuando su programa usa cin para leer múltiples valores, cin utiliza espacios en blanco para<br />
determinar donde un valor termina y comienza un segundo valor.<br />
Si el usuario no introduce datos correctos, pueden ocurrir errores, y el valor que cin asigna a las<br />
variables de su programa puede ser incorrecto.<br />
Para leer los datos en C++ emplee el objeto de flujo de entrada cin. Como cout, cin es un objeto de<br />
flujo de archivo predefinido en C++.<br />
El enunciado cin debe incluir una(s) variable (s) para lectura. Cualquier variable listada dentro de un<br />
enunciado cin se debe definir antes de usarse en el programa.<br />
Además, la clase de datos ingresada para una variable determinada deberá coincidir con la clase de<br />
datos definida para esa variable.<br />
El operador de extracción de flujo >> se usa dentro del enunciado cin para extraer datos desde el<br />
flujo de entrada y asignar estos datos a la(s) variable(s) listadas en el enunciado cin.<br />
Cuando lea los datos de un solo carácter, el operador >> ignora los espacios en blanco. Sin embargo,<br />
puede usar la función get() con cin para leer datos de espacio en blanco de un solo carácter.<br />
La función miembro get() sin argumentos introduce un carácter y lo devuelve; devuelve EOF si<br />
encuentra el fin de archivo del flujo.<br />
La función miembro get() con un argumento de clase char introduce un carácter. Se devuelve EOF<br />
cuando encuentra el final del archivo, en caso contrario se devuelve el objeto istream para el que se<br />
llamó la función miembro get()<br />
La función miembro get() con tres argumentos –un arreglo de caracteres, un límite de tamaño y un<br />
delimitador (que tiene un valor predeterminado de nueva línea) –lee caracteres desde el flujo de<br />
entrada hasta un máximo del límite de caracteres – 1 y termina, o termina cuando se lee el delimitador.<br />
La cadena de entrada se termina con un carácter nulo. El delimitador no se coloca en el arreglo de<br />
caracteres, sino que permanece en el flujo de entrada.<br />
La función miembro getline() opera en forma similar a la función get() con tres argumentos. La<br />
función getline() elimina al delimitador de flujo de entrada pero no lo almacena en la cadena.<br />
Cuando lea datos de cadena de caracteres, el operador >> terminará en un espacio en blanco. Como<br />
resultado, debe usar la función getline() junto con cin cuando lea un arreglo de caracteres o cadenas.<br />
Cuando use getline(), deberá descartar los caracteres restantes “\n” en la memoria temporal del teclado<br />
a partir de una operación de lectura anterior. Para lograr esto, use un carácter delimitador diferente para<br />
getline(), una variable temporal o el manejador ws.<br />
La función miembro ignore() se salta un número especificado de caracteres (el número<br />
predeterminado es un carácter) en el flujo de entrada, y termina si encuentra al delimitador<br />
especificado (el delimitador predeterminado es EOF)<br />
La función miembro putback() devuelve al flujo el carácter anterior obtenido mediante un get()<br />
La función miembro peek() devuelve el siguiente carácter de un flujo de entrada, pero no elimina el<br />
carácter del flujo.<br />
FUNDAMENTOS – <strong>LECCIÓN</strong> 7 7-59