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

cin.getline - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача по многопоточному программированию http://www.cyberforum.ru/cpp-beginners/thread367854.html
Здравствуйте! Я новичок в многопоточном программировании, необходимо было выполнить тестовое задание: Используя С++, Win32 API и STL корректно реализовать следующую задачу: Откуда-то дано:...
C++ Функции типа void Добрый вечер, у меня есть проблема, которую я не могу решить. Есть функция типа void. Суть этой функции в том, чтобы печетать некие значения. Но мне нужно еще, записать эти значения в массив, как... http://www.cyberforum.ru/cpp-beginners/thread367846.html
Вывод содержимого map C++
#include <vcl.h> #include <string> #include <map> #include <iostream> #pragma hdrstop #include <tchar.h> using namespace std;...
C++ Метод сортировки обменом
Используя метод сортировки обменами,получить из вектора Х размерности 1 вектор В, в котором элементы,начиная с К-го(к<1) размещены по убыванию. Пожалуйста помогите сделать! Не пойму что за векторы(
C++ Связь между функцией и выбором случайного числа http://www.cyberforum.ru/cpp-beginners/thread367789.html
Здравствуйте! Я не знаю как связать функцию вычисления простоты числа с выбором раномного числа, т.е. мне нужно выбрать простое рандомное число:) bool simple (int n) { if(n==1) return 0; ...
C++ Задачи по с++ Пожалуйста помогите написать код ТОЛЬКО НА С++. Доброго времени суток, уважаемые знатоки. Возникла проблема с решением данных программ.Надеюсь услышать не глупые советы в стиле- решается простой... подробнее

Показать сообщение отдельно
Сыроежка
Заблокирован
17.10.2011, 19:20
Цитата Сообщение от MrGluck Посмотреть сообщение
Почему тут как будто игнорируется строка
C++
1
cin.getline(b.str, N);
Как заставить считать в массив str строку с пробелами?
Наверное это происходит из-за того, что вы вводите первое число и нажимаете ENTER. Ввод числа останавливается, как только встретился "не числовой символ", то есть в данном случае символ конца строки. Затем следующий cin.getline считывает пустую строку, то есть то, что находится до стмвола конца строки.

Хотел бы также сделать предложение по коду. Переменную N лучше сделать членом класса, так как ее значение действительно является характеристикой вашего класса, то есть размерностью массива - члена класса. Поэтому я бы объявил ваш класс следующим образом

C++
1
2
3
4
5
6
struct book
{
    int page;
    enum { N = 100 };
    char str[N];
} b;
Или то же самое можете сделать с помощью статической константы

C++
1
2
3
4
5
6
struct book
{
    int page;
    static const size_t N = 100;
    char str[N];
} b;
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru