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

Функция getline не считывает пробелы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Битовые операции http://www.cyberforum.ru/cpp-beginners/thread440673.html
Ребят, нужен алгоритм, а желательно и код для реализации следующей функции: Есть скажем числа от 0 до 7, т.е. 8 (2^3) Теперь взглянем на их представления в разрядной сетке (в дальнейшем будем рассматривать только младшие 3 бита, ибо это есть степень 2 и остальные разряды у этих чисел будут одинаковые): 0 -> 000 1 -> 001 2 -> 010 3 -> 011 4 -> 100 5 -> 101
C++ Не правильно работает 1 из счетчиков Помогите, не правильно считает счетчик nw, в упор не понимаю по чему... #include <conio.h> #include <stdio.h> #define eof -1 #define yes 1 #define no 0 int main() { http://www.cyberforum.ru/cpp-beginners/thread440640.html
C++ Вопрос по работе с файлами в Visual Studio
Написал программу для работы с файлом в Visual Studio. Iostream подключил. Но такие вот привычные записи, как, например, ifstream fin("c:\\projects\\text1.txt", ios::in | ios::nocreate); visual studio использовать не хочет. На fin.seekg(0, ios::end); тоже рукается, типа fin должен быть классом. Можете подсказать, что нужно исправить / подключить, чтоб visual мог работать с такими функциями?
C++ Работа с классами
Составить описание объектного типа TMatr, что обеспечивает размещение матрицы произвольного размера с возможностью изменения числа строк и столбцов, вывод на экран подматрицы любого размера и всей матрицы.
C++ Динамическая матрица http://www.cyberforum.ru/cpp-beginners/thread440623.html
помогите написать 2 проги 1) 2) по критериям: 1)Динамические массивы обязательны 2)работать через адресную арифметику, - запрещены 3)распечатать не только значения но и адреса
C++ Обявление классов Вобщем получалась такая ситуация, есть 2 класса class A { public: SomeMethod( B *param ); } class B { public: SomeMethod( A *param ); } Как указать первому классу что второй обьявлен? Написал перед классом А строку подробнее

Показать сообщение отдельно
Том Ардер
Модератор
 Аватар для Том Ардер
3617 / 2236 / 271
Регистрация: 15.06.2009
Сообщений: 3,915
04.02.2012, 17:47     Функция getline не считывает пробелы
Цитата Сообщение от Kastaneda Посмотреть сообщение
Смотри, в строке может быть число 325, тогда когда i будет указывать на 3, то good_str будет 0, а i увеличится на 1. При следующей итерации i будет указывать на 2, далее будет идти 5 а потом например пробел и good_str станет равным 1, как будто это двузначное число, хотя это не так. Поэтому нужно смотреть еще предыдущий символ, чтоб он не был цифрой.
Это тоже не спасает: для цифры 5 надо смотреть уже два предыдущих символа.
Выход в другом: считать количество цифр

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
char buf[256], *pbuf = buf;
bool good_str = false;
 
while( *pbuf && !good_str )
{
    int ndigits = 0;
    char pdig = pbuf;
 
    while( isdigit(*pdig) )
    {
        pdig++;
    }
 
    ndigits = pdig - pbuf;  // pdig или =pbuf, или указывает на символ после последней цифры
 
    good_str = ndigits == 2;
 
    pbuf += ndigits + 1;  // пропустить число или перейти к следующему символу
}
 
Текущее время: 01:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru