Форум программистов, компьютерный форум 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... подробнее

Показать сообщение отдельно
Toshkarik
1141 / 858 / 51
Регистрация: 03.08.2011
Сообщений: 2,386
Завершенные тесты: 1
28.02.2013, 01:24
http://www.daniweb.com/software-deve...e-input-stream
В частности код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <ios>
#include <istream>
#include <limits>
template <typename CharT>
std::streamsize ignore_line (
  std::basic_istream<CharT>& in, bool always_discard = false )
{
  std::streamsize nread = 0;
  if ( always_discard
    || ( in.rdbuf()->sungetc() != std::char_traits<CharT>::eof()
    && in.get() != in.widen ( '\n' ) ) )
  {
    // The stream is good, and we haven't
    // read a full line yet, so clear it out
    in.ignore ( std::numeric_limits<std::streamsize>::max(), in.widen ( '\n' ) );
    nread = in.gcount();
  }
  return nread;
}
class ignoreline {
  bool _always_discard;
  mutable std::streamsize _nread;
public:
  ignoreline ( bool always_discard = false )
    : _always_discard ( always_discard ), _nread ( 0 )
  {}
  std::streamsize gcount() const { return _nread; }
  template <typename CharT>
  friend std::basic_istream<CharT>& operator>> (
    std::basic_istream<CharT>& in, const ignoreline& manip )
  {
    manip._nread = ignore_line ( in, manip._always_discard );
    return in;
  }
};
 
int main()
{
  std::cout<<"First input: ";
  std::cin.get();
  std::cout<<"Clearing cin.\n";
  std::cin>> ignoreline();
  std::cout<<"All done.\n";
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru