Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Очистка потока ввода && строки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Дана последовательность из n натуральных чисел http://www.cyberforum.ru/cpp-beginners/thread795790.html
Дорогие форумчане, помогите пожалуйста. Дана последовательность из n натуральных чисел. Для каждого числа исходной последовательности подсчитать количество и сумму четных цифр в записи числа....
C++ Найти в массиве максимальный и минимальный элементы в массиве и их количество Помогите, пожалуйста, начал осваивать c++...Не могу справиться с такой задачей: Написать программу, которая вводит с клавиатуры массив из N вещественных чисел, находит среди элементов максимальный... http://www.cyberforum.ru/cpp-beginners/thread795786.html
DLL 32 и 64 в C++ 2010 C++
Написал простой dll, откомпилировал его в VC 2010 подключаю к матлабу, который ругается что dll создан 32 битным компилятором, а нужен 64 битный. Подскажите пожалуйста как в VC 2010 откомпилировать...
C++ Задача на массивы и строки
Написать программу, которая вводит с клавиатуры массив из N вещественных чисел, находит среди элементов массива индекс первого минимального и первого максимального элемента и выводит результат...
C++ delete[] http://www.cyberforum.ru/cpp-beginners/thread795770.html
Здравствуйте! Имеется след. код: char* values = new char; values = '\0'; ////ещё код//// delete values; Вопрос - почему программа вылетает на строке delete?
C++ Перегрузка сложения Stonewt Stonewt::operator +(Stonewt &st){ Stonewt st1; st1.stone=st.stone+stone; st1.pds_left=st.pds_left+pds_left; cout<<st1.pds_left<<endl; if(st1.pds_left>lbs_per_stn){ int... подробнее

Показать сообщение отдельно
[WRG]
51 / 51 / 9
Регистрация: 20.11.2011
Сообщений: 243
Записей в блоге: 1

Очистка потока ввода && строки - C++

26.02.2013, 23:04. Просмотров 15566. Ответов 29
Метки (Все метки)

как вобще грамотно очистить поток после ввода множества всяких вещей с клавиатуры?
если совсем не чистить то остаются нажатия клавиши enter, если применять такой код
C++
1
2
3
cin.clear();
while(cin.get() != '\n');
cin.get();
в конце каждой функции в программе, где происходит ввод, то в итоге пользователю приходится 4-5 лишних раз давить enter после ввода чего либо, т.е. эффект обратный. как реализовать очистку потока вывода грамотно?

и еще, есть функция
C++
1
2
3
4
5
6
7
8
void initialize_values(goods *db)
{
    for (int i = 0; i < base_size; i++) {
        strcpy(db[i].value, '\0');
        db[i].cost = 0;
        db[i].quantity = 0;
    }
}
инициализирует массив записей при старте программы. в дальнейшем предполагается использовать db[i].value как критерий существования записи: если строка нулевая, то запись пустая и её можно заполнить. но у меня почему то не получается использовать if(!db[i].value) { ...........}, он просто не срабатывет. причем если value инициализировано как strcpy(db[i].value, '\0') ,то программа выдает просто segmentation vault и не работает, а если strcpy(db[i].value, "\0"), то компилируется без ошибок, но опять же if(!db[i].value) { ...........} не работает. в чем ошибка?
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru