Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
MIGUEL Á. TOLEDO MARTÍNEZ<br />
.<br />
[30]<br />
Como puede ver, las posiciones del arreglo [0] a [5] contienen la cadena Miguel formada por los<br />
caracteres individuales M, i, g, u, e, l. La posición del arreglo [6] contiene el carácter terminador<br />
nulo ‘\0’. El operador >> inserta el terminador nulo en el arreglo y termina la operación de lectura<br />
cuando encuentra el carácter blanco (espacio en blanco) De esta manera, los demás caracteres que<br />
se ingresaron no son extraídos del flujo, como se muestra por las posiciones restantes del arreglo<br />
que contienen los terminadores nulos de la inicialización. De hecho, si a ésta siguiera otro<br />
enunciado cin, deberá leer el segundo nombre de Miguel (Ángel), dado que el usuario escribió el<br />
nombre completo, coloca Ángel en la memoria temporal de flujo.<br />
Hay algunas formas para resolver el problema anterior. Una de ellas es definir por separado<br />
arreglos de caracteres para cada una de las palabras que serán leídas. En este caso, podrá crear los<br />
siguientes arreglos: primerNombre, segudoNombre, apellidoPaterno y apellidoMaterno, y usar<br />
cuatro enunciados cin >> para leer el primero y el segundo nombre, los apellidos paterno y<br />
materno respectivamente.<br />
USO <strong>DE</strong> getline() PARA LEER CA<strong>DE</strong>NAS <strong>DE</strong> CARACTERES<br />
La función miembro getline() opera en forma similar a la tercera versión de la función<br />
miembro get() e inserta un carácter nulo después de la línea en el arreglo de caracteres. La<br />
función getline() elimina del flujo al delimitador (es decir, lee el carácter y lo descarta), pero no<br />
lo almacena en el arreglo de caracteres.<br />
Ejemplo 7.12<br />
El siguiente programa GETLINE.CPP, ilustra el uso de entrada mediante la función miembro<br />
getline()<br />
/* El siguiente programa: GETLINE.CPP, da entrada a caracteres mediante la función miembro<br />
getline()<br />
*/<br />
#include //Para cout y cin<br />
void main(void)<br />
{<br />
const TAMANO = 80;<br />
char bufer[TAMANO];<br />
cout