[C con Clase] Duda sobre cin.getline
Luis Pedro Méndez
elinv.elinv en gmail.com
Lun Abr 4 01:31:44 CEST 2011
Hola prueba el siguiente código:
-------------------------------------------------
/*
* Codigo desarrollado por Elinv.
* http://www.bragadomas.com/forodeprogramacion/index.php
* http://www.bragadomas.com
* http://www.bragadomas.com.ar
* http://luispedromendez.blogspot.com/
* http://elinv-elinv.blogspot.com/?expref=next-blog
*/
#include <iostream>
#include <cstring>
#define TAM 64
using std :: cin;
using std :: cout;
using std :: endl;
class Libreria
{
public:
Libreria()
{
strcpy(title, "Libreria IPN");
}
void titulo()
{
system("cls");
cout << title << endl << endl;
}
void pedir();
void mostrar();
private:
char title[TAM];
char nombreLibro[TAM];
} objLibreria;
void Libreria :: pedir()
{
cout << "Ingresa el titulo del libro: ";
cin.getline(nombreLibro, TAM); // He aquí el problema
}
void Libreria :: mostrar()
{
cout << nombreLibro << endl;
}
int main()
{
objLibreria.titulo();
objLibreria.pedir();
objLibreria.mostrar();
return 0;
}
-------------------------------------------------
A nosotros nos funcionó
Elinv
2011/4/3 Jovanny <fxy_95 en yahoo.com.mx>
> Hola, mi duda es la siguiente:
>
> En la IDE Code :: Blocks 10.05, al usar la función cin.getline no me deja
> ingresar la cadena de caracteres:
>
> #include <iostream>
> #include <cstring>
> #define TAM 64
>
> using std :: cin;
> using std :: cout;
>
> class Libreria
> {
> public:
> Libreria()
> {
> strcpy(title, "Libreria IPN");
> }
> void titulo()
> {
> system("cls");
> cout << title << endl << endl;
> }
> void pedir();
>
> private:
> char title[TAM];
> char nombreLibro[TAM];
>
> }objLibreria;
>
> void Libreria :: pedir()
> {
> cout << "Ingresa el titulo del libro: ";
> cin.getline(nombreLibro, TAM); // He aquí el problema
> }
>
> int main()
> {
> objLibreria.titulo();
> objLibreria.pedir();
>
> return 0;
> }
>
> Al ejecutar este código, no me deja ingresar la cadena de caracteres
> (nombre del libro) y aparece el mensaje de que se ha finalizado el programa.
>
> Quisiera saber por qué ocurre eso, o si es que cometí algún error; en el
> caso de que el programa pidiera el nombre del autor, editorial, etc, usando
> la misma funcion cin.getline(), se salta el titulo pero si deja ingresar el
> autor o editorial.
>
> Si es posible usar una función alternativa a esta, quisiera saber cual!!!!
>
> Ayuda!!!!!!
> exp_95
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20110403/96e33232/attachment.html>
Más información sobre la lista de distribución Cconclase