| 21.09.2014, 17:33 | |
|
Ответы с готовыми решениями:
73
Вывести самые распространенные женские и мужские имена
Ошибки после компиляции на Visual Express 2012.Ошибки в теме |
|
1469 / 1010 / 456
Регистрация: 30.10.2017
Сообщений: 2,799
|
||||||
| 05.03.2018, 01:38 | ||||||
|
zss, не совсем понимаю в чем проблемность этой конструкции? cin игнорирует же символ конца строки. На двух компиляторах у меня проблем не возникает, может я просто чего то недопонимаю.
0
|
||||||
|
Модератор
13792 / 10984 / 6492
Регистрация: 18.12.2011
Сообщений: 29,285
|
|||||||||||
| 05.03.2018, 06:54 [ТС] | |||||||||||
|
QuakerRUS, а попробуйте
1
|
|||||||||||
|
1469 / 1010 / 456
Регистрация: 30.10.2017
Сообщений: 2,799
|
|||||||||||||||||||||
| 05.03.2018, 16:11 | |||||||||||||||||||||
|
zss, на счет этих двух вариантов, да, согласен. cin оставляет в потоке символ конца страницы, а cin.get и cin.getline его считывают и получают пустое значение в итоге. Речь была именно о том варианте, где два cin, он указан в распространенных ошибках.
Добавлено через 1 час 4 минуты zss, в нижних двух примерах проблема так же будет наблюдаться, когда число вводится перед нажатием Enter
zss, в исправлении к этой ошибке в шестой строчке тоже старый вариант.
zss, я имел ввиду, что
1
|
|||||||||||||||||||||
|
Комп_Оратор)
|
|||||||||||
| 05.05.2020, 12:39 | |||||||||||
|
Прошу прощения, но не нашёл более подходящей рубрики. Надеюсь Сергей Сергеевич найдёт этому место, если сочтёт нужным.
Ошибка очень простая, но стакан крови может выпить легко) Бывает что хочется создать счетчики циклов вне цикла. Это бывает оправдано если значения требуются после выполнения циклов.
0
|
|||||||||||
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,876
|
|||||||||||||||||
| 05.05.2020, 12:49 | |||||||||||||||||
вывод всегда нужно присваивать в шапке цикла начальное значение
2
|
|||||||||||||||||
|
Комп_Оратор)
|
||
| 05.05.2020, 13:16 | ||
|
В отладке он сегодня сгинул, ИтератОр не забегинил!
0
|
||
|
Вездепух
13229 / 6861 / 1827
Регистрация: 18.10.2014
Сообщений: 17,392
|
||||||||||||||||||||||||||
| 17.08.2020, 04:58 | ||||||||||||||||||||||||||
|
Наивный подход к записи сложных объектов в бинарный файл
Работа с объектом, как с плоской непрерывной конечной последовательностью байтов, в таких контекстах, как, например, копирование при помощи memcpy или запись в бинарный файл, возможна только в том случае, если объект по своей сути действительно представляет собой тривиальную "плоскую" последовательность байтов. Например, такие типы как int или
B [20] являются примерами таких "плоских" типов. Это, в частности, означает то, что такие объекты можно смело записывать в бинарный файл и читать оттуда "одним махом", при помощи единственного вызова функции ввода-вывода1. Например
Нетривиальная внутренняя структура может возникнуть в объекте и неявным образом. Например, наличие в классе виртуальных методов или виртуальных базовых классов - это уже явное противопоказание против попыток тривиальной записи соответствующих объектов в бинарный файл, даже если в некоторых реализациях такие попытки могут приводить к работоспособным результатам 4. Также примерами типов с нетривиальной внутренней структурой являются типы, о внутренней структуре которых нам формально ничего не известно (и не должно быть известно). Например, внутренняя структура стандартных классов std::string или std::vector является деталью реализации и нас совершенно не касается. Это означает, что пытаться записывать в файл объекты типа std::string через
C содержит в себе подобъекты типа std::vector и str::string.Для того, чтобы правильно записать в файл такой сложный объект необходимо разработать специальный протокол/формат сериализации, т.е. аккуратно последовательно сохранить в файл все отдельные "кусочки" информации, которые в будущем позволят точно восстановить объект из файла в процессе чтения. Как правило это не получится сделать одной операцией записи/чтения. Таких операций понадобится несколько. Например, запись в бинарный файл и последующее чтение из бинарного файла объекта типа std::string может выглядеть следующим образом
--- 1) При этом, разумеется, нужно помнить, что такой способ записи работоспособен/портабелен только в рамках одной стабильной реализации (компилятора) языка С++ и набора настроек этого компилятора. Смена компилятора (или просто смена настроек компилятора) запросто может привести к изменению расположения элементов таких типов в памяти, размеров этих элементов и других деталей их бинарного представления, что приведет к тому, что ранее записанный бинарный файл станет нечитаемым (или потребует нетривиальных усилий для чтения). 2) Объект может содержать и указатели на самого себя 3) Однако если вы абсолютно стопроцентно уверены, что значение указателя останется актуальным с момента записи и до момента чтения, то указатель можно записывать в бинарный файл. Понятно, что такое возможно только для короткоживущих файлов: временных scratch-файлов или swap-файлов, как их обычно называют. 4) Можно добавить, что типы, не удовлетворяющие стандартному свойству std::is_trivially_copyable не совместимы с тривиальным способом записи. Однако требование std::is_trivially_copyable является лишь необходимым, не не достаточным условием возможности такой записи. Классы с указателями внутри запросто могут удовлетворять std::is_trivially_copyable, но все равно требовать нетривиальной записи.5) Не все стандартные типы являются такими "черными ящиками". Например, объекты стандартного класса std::array являются агрегатами и их можно смело записывать в файл "одним махом". Разумеется, при условии, что элементы массива std::array тоже допускают такой способ записи.
9
|
||||||||||||||||||||||||||
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,876
|
|
| 25.11.2020, 17:00 | |
|
0
|
|
| 25.11.2020, 17:23 | |
|
0
|
|
|
|
|
| 25.11.2020, 17:38 | |
|
Поспешил... У ТС эта тема уже озвучена:
Распространенные ошибки Croessmah, разница между ошибкой и опечаткой очень тонкая. Тем более, что есть еще оплошности и промахи.
0
|
|
| 25.11.2020, 19:30 | |
|
0
|
|
|
|
|
| 25.11.2020, 20:56 | |
|
Кстати, вот книга на тему:
How Not to Program in C++: 111 Broken Programs and 3 Working Ones, or Why Does 2+2=5986 by Steve Oualline ISBN:1886411956
0
|
|
| 25.11.2020, 20:56 | |
|
Распространенные ошибки безопасность и распространенные ошибки безопасность и распространенные ошибки Распространенные ошибки SEO и ASP.NET 2.0 Самые распространенные строки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки
Правым кликом по серверу -> отладочная информация -> edit
Заменить "net": "raw", на "net": "tcp",
Нажать кнопку reload.
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|