Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Классы (статические члены и конструктор копирования) https://www.cyberforum.ru/ cpp-beginners/ thread1279661.html
Добрый вечер! Написал программку, все нормально работает, но есть два нюанса: необходимо сделать счетчик количества записей через статический член класса и функцию создания базы учеников с задолженностью (<45 баллов) через конструктор копирования. Пытался разобраться по Шилдту, потом по форумам в итоге окончательно запутался. Код прилагаю с моими попытками сделать конструктор копирования. ...
C++ Получить все делители числа q, взаимно простые к p
Даны натуральные числа p и q. Получить все делители числа q, взаимно простые к p. помогите пожалуйста.
C++ Многофайловый проект с функциями в классе https://www.cyberforum.ru/ cpp-beginners/ thread1279659.html
создаю класс в ней функцию и запихиваю все программу, все работает. Но мне нужно сделать несколько функций я разбиваю программу создаю файлы сpp, и при выполнении выдается ошибка. Помогите решить проблему программа 1 файл: #include <fstream> #include "Header.h" #include <conio.h> void Matrix::size() {
C++ Pascal -> C++ Преобразовал код Pascal в код C++, но при вводе значений в код Pascal 1 и 2 программа выводит правильный результат, равный 363. Когда я ввожу цифры 1 и 2 в код, написанный на C++, то программа выдаёт 370. Скажите, пожалуйста, где я не так переписал код: var m, d, count, i: integer; function CountDay(m: integer): integer; begin if (m >= 1) then countday := 31; if (m >= 2) then... https://www.cyberforum.ru/ cpp-beginners/ thread1279652.html
C++ Какое расстояние проходит свет за час? за сутки?
Помогите надо сделать практическую работу. Короткий опис головного меню і основні клавіші керування IDE Borland С++ 3.1; Формалізацію поставленого завдання методом покрокової деталізації; Блок-схеми алгоритмів; Опис змінних ,які застосовуються у програмі; Лістинги програм, створених на лабораторній роботі; Результат виконання програм (для кожного прикладу). Висновки. Вот...
C++ Перевести с десятичной в двоичную систему счисления Есть ли какой метод в С++ для этого или надо самому писать метод))? https://www.cyberforum.ru/ cpp-beginners/ thread1279640.html
C++ Вывод структуры, строка как элемент структуры https://www.cyberforum.ru/ cpp-beginners/ thread1279629.html
Описать структуру с именем TRAIN, содержащую следующие поля: □ название пункта назначения; □ номер поезда; □ время отправления. Написать программу, выполняющую следующие действия: □ ввод с клавиатуры данных в массив, состоящий из шести элементов типа TRAIN; записи должны быть упорядочены по времени отправления поезда; □вывод на экран информации о поездах, направляющихся в пункт,...
Массивы векторы C++
Здравствуйте,недавно начал изучать c++.Разобрался с циклами,списками,указателями и недавно научился выделять динамическую память под массивы.В ходе последней темы возник вопрос : зачем вообще нужны массивы,если есть векторы? (как я понял для векторов уже все основные алгоритмы написаны). С какой книги стоит продолжить обучение,при условии,что я знаю вышеперечисленное? Заранее спасибо)
C++ Шифрование перестановкой с ключом https://www.cyberforum.ru/ cpp-beginners/ thread1279613.html
Помогите найти ошибку, неправильно выводит зашифрованноое сообщение #include<stdio.h> #include<conio.h> #include<string.h> void main() { char Message,Code1,Code2,Code3,Key; int Message_Length,Key_Length,rows=0,End_i,End_j,columns,i,j,k; clrscr(); Label1: puts("MESSAGE :"); gets(Message);
C++ [Linker Error] undefined reference to https://www.cyberforum.ru/ cpp-beginners/ thread1279603.html
Вызываю так функцию в main'e: #include <cstdlib> #include <iostream> #include <iomanip> #include "matrix.h" using namespace std; const int n = 3;
C++ Пересечение треугольников в 3d
Вот например 2 треугольника: (для примера) struct Point { int X; int Y; int Z; };
C++ Найдите ошибку в следующем фрагменте программы https://www.cyberforum.ru/ cpp-beginners/ thread1279579.html
Найдите ошибку в следующем фрагменте программы: #include <iostream> int main() { int* pint; *pint = 9; cout << "pint: " << *pint; return 0; }
Вездепух
Эксперт CЭксперт С++
11689 / 6368 / 1723
Регистрация: 18.10.2014
Сообщений: 16,051
20.10.2014, 18:08 0

Почему если флаг состояния потока eof поднят, то флаг good опущен? - C++ - Ответ 6745517

20.10.2014, 18:08. Показов 2785. Ответов 15
Метки (Все метки)

Ответ

Цитата Сообщение от notemac Посмотреть сообщение
А если через строку, то
C++
1
2
3
4
5
char str = "stroka";
    istrstream is(str);
    is >> setw(6)>>str;
        ...
    cout<<endl<<str;
Выводит только 5 символов, т.е. на 1 меньше, чем параметр в setw().
Это просто так реализовано? (думаю из-за '\0' в конце)
Не совсем понимаю примера. У меня вышепроцитированным примером кода читается и выводится именно 6 символов, и в gcс, и в MSVC.

Если читать в массив 'char', то читаться действительно будет только 5 символов, т.е. на один меньше, чем указано в 'setw'. Но так и должно быть - стандарт это явно оговаривает. А если читать в 'std::string', то читаться будет 6 символов.

Добавлено через 2 минуты
Цитата Сообщение от Tulosba Посмотреть сообщение
вернет eof() == true для std::string, но ==false для char[]. Хотя, казалось бы, поведение должно быть согласовано.
Это как раз таки явно оговорено в стандарте. Для 'char []' читается 'n - 1' символ, а для 'string' - 'n' символов (где 'n' - величина, заданная в 'setw').

Вернуться к обсуждению:
Почему если флаг состояния потока eof поднят, то флаг good опущен? C++
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.10.2014, 18:08
Готовые ответы и решения:

Флаг failbit для перенаправления строкового потока; почему он всегда у меня поднят?
#include &lt;windows.h&gt; #include &lt;stdio.h&gt; #include &lt;sstream&gt; using namespace std; int main()...

Нарисовать на экране дисплея флаг РФ, Японский флаг
Нарисовать на экране дисплея флаг РФ, Японский флаг 300*200px Добавлено через 22 часа 20 минут ...

Получить флаг о готовности данных от дочернего потока
Доброго времени суток. Имеется следующая разработка: мини-прога, набор небольших утилит, основная...

Олимпийский флаг, почему не рисуется?
Нужно, чтобы выводился олимпийский флаг, а выводится пустая форма. Почему так? Код: unit...

15
20.10.2014, 18:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.10.2014, 18:08
Помогаю со студенческими работами здесь

Сколькими способами можно сшить трехцветный флаг, если есть ткани 5 различных цветов?
Сколькими способами можно сшить трехцветный флаг, если есть ткани 5 различных цветов?

Сколькими способами можно сделать флаг с горизонтальными полосами одинаковой ширины, если есть материя 6 разных цветов,
Сколькими способами можно сделать флаг с горизонтальными полосами одинаковой ширины, если есть...

Задана 32-х битная переменная и набор 32-битных флагов. Если бит в заданной переменной равен единице то считать,что соответствующий флаг установлен...
Задана 32-х битная переменная и набор 32-битных флагов. Если бит в заданной переменной равен...

Почему событие eof() файлового потока наступает очень поздно? Какова вообще его логика?
Вот пример, если в папке с программой разместить файл input.txt с числами &quot;1 2 3&quot;, то в векторе...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru