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

getline vs посимвольный ввод - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сортировка с двоичным включением http://www.cyberforum.ru/cpp-beginners/thread982868.html
Продемонстрируйте в виде таблицы работу алгоритма сортировки с двоичным включением на массиве 15,4,10,8,6,9,16,1 по возрастанию. Помогите, как это будет выглядеть? Код программы не нужен, чисто таблицу.
C++ Дописать код о удаление строк и столбцов с матрицы Данная программа находит Мax элемент в данной матрицы и указывает строку и столбец его нахождения. Нужно дописать, чтобы получалась новая матрица путем удаления этой строки и столбца Max элемента. Буду признателен кто поможет. clude <iostream.h> #include <windows.h> #include <time.h> int main() { SetConsoleOutputCP(1251); http://www.cyberforum.ru/cpp-beginners/thread982864.html
C++ Как объединить два массива в один?
Вот к примеру есть два массива: int A={1,2,3,4}; int B={5,6,7,8}; Как создать третий массив С , в котором будут содержаться элементы массива А и В, но так , чтобы массив С был такой: int C={1,5,2,6,3,7,4,8} Ну или просто хотя бы объединить , чтобы массив С =1,2,3,4,5,6,7,8 ? Помогите, пожалуйста ) Добавлено через 9 минут Объединить у меня получилось так:
Доступ к области памяти из другого класса C++
Есть класс в котором создаётся область в памяти, как получить из другого класса доступ к этой облпсти в возможностью перезаписи? В примере много чего вырезано, но более ли мение ясно. class Class_1 { private: public: void function_1()
C++ Удаление строк из двумерного массива http://www.cyberforum.ru/cpp-beginners/thread982843.html
Вот мой код, но он удаляет только 1 строку, мне надо переделать его так чтобы я вводил числа A и B и удалялись строки от А до Б но размер массива не менялся и в конце дописывались нулевые строки #include <stdio.h> #include <stdlib.h> #include <time.h> #include <conio.h>
C++ Найти сумму ряда(сделать последний шаг) здраствуйте я учусь не на програмиста но нам задали 3 лабораторные работы по С++ и сказали разобратся самим и решить, на этом изучение закончилось (но лабы я еще не сделал) в третей лабе нужно найти сумму ряда , часть я уже нагуглил#include <iostream> #include <cmath> using namespace std; int main() { float sum1=0, sum2=0, y, x; for (x=4; x<=7.5; x+=0.3) {sum1=111111111; подробнее

Показать сообщение отдельно
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
21.10.2013, 12:00     getline vs посимвольный ввод
После cin >> в потоке остаётся '\n' (попадает туда при нажатии Enter). Если дальше getline(), то для неё это будет первый символ. Для getline() - это пустая строка. Она его извлечёт из потока, в строку чтения поместит '\0', и код пойдёт, без остановки на ввод, дальше. В коде, ввод через cin >> перед getline(), происходит в двух местах: первый раз перед циклом (cin >> n), второй раз - в каждой итерации цикла (cin >> s1). Тут и нужно извлечь '\n' из потока. Извлекается '\n' так:
C++
1
2
cin >> n;
cin.get(); // извлекает один символ из потока чтения, в данном коде '\n'
Тоже самое можно записать одной строкой:
C++
1
(cin >> n).get();
Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
 (cin >> n).get();
    for (int i = 0; i < n; i++)
    {
        string s, s1;
        getline (cin, s);
       (cin >> s1).get();
    //  cout << s << endl << s1 << endl;
        if (s1 == "Slytherin") Slytherin.push_back(s);
        else if (s1 =="Hufflepuff") Hufflepuff.push_back(s);
        else if (s1 =="Gryffindor") Gryffindor.push_back(s);
        else if (s1 =="Ravenclaw") Ravenclaw.push_back(s);
    }
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru