Ввод с клавиатуры

Тема в разделе "Общие вопросы по С и С++", создана пользователем Irisha, 15 сен 2010.

  1. Irisha

    Irisha Гость

    Здравствуйте! Может быть вы подскажете, что и где неправильно: ну никак не получается считать с клавиатуры:
    Хочу просто ввести данные с клавиатуры и вывести их на экран:
    Код (C++):
    #include <iostream>
    #include <iomanip>
    using namespace std;
    #include <conio.h>
    class PL
    {
    char Naz[];
    int Code;
    int Sum;
    public:
    PL();
    ~PL();
    void vvod();
    void show();
    };

    PL::PL()
    {
    Naz = new char[100];
    Code = 0;
    Sum = 0;

    }

    PL::~PL()
    {
    delete[]Naz;
    }

    void PL::vvod()
    {
    fflush(stdin);
    cout <<endl<< "Vvedite naznachenie platega "<<endl;
    cin >> Naz;
    cout <<endl<< "Vvedite cod poluchatelya"<<endl;
    cin >> Code;
    cout <<endl<< "Vvedite summu platega"<<endl;
    cin >> Sum;
    }

    void PL::show()
    {
    cout<<endl<<Naz;
    cout<< endl<< Code << endl << Sum << endl;
    }

    int main()
    {
    PL *p1,*p2;
    p1 = new PL();
    cout<<"Vvedite plateg #1: "<<endl;
    p1->vvod();
    p2 = new PL();
    cout<<"Vvedite plateg #2: "<<endl;
    p2->vvod();
    p1->show();
    p2->show();
    cout<<endl;
    getch();
    return 1;
    }
    В итоге я могу ввести только
    cout <<endl<< "Vvedite naznachenie platega "<<endl;
    cin >> Naz;
    а все остальное у меня и не спрашивается, а выводится на экран: первое слово 1го платежа, код 0, сумма 0, для второго платежа: пустое название, код 0, сумма 0. В чем может быть причина? Что я делаю не так?
    Заранее спасибо!
     
  2. burime

    burime Гость

    расскажите мне не образованному, а что это делает? ->> fflush(stdin);
     
  3. ChexoV

    ChexoV Гость

    странно,проверил тока что.Ввод и вывод в поряде.попробуй через gets и scanf )а fflush по моему чистит буфер что ли)
     
  4. astronom

    astronom Гость

    разве не cin.get и cin.getline? ;)
     
  5. Irisha

    Irisha Гость

    fflush в правду чистит буфер (я думала, может это как-то поможет)... Ввод так и не получился пока что, но буду пробовать cin.get cin.getline gets и scanf ) Спасибо!!!
     
Загрузка...

Поделиться этой страницей