|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
20.06.2017, 20:00 | #1 |
Пользователь
Регистрация: 01.03.2017
Сообщений: 31
|
Не читаемые символы при чтении файла из структуры "Товары"
У меня выводятся не читаемые символы на экран, когда я ввожу текст на русском: Снимок.JPG
В итоге в файл записываются какие-то непонятные мне символы: непонятные символы.JPG Помогите мне, пожалуйста. Вот исходный код программы: Код:
|
20.06.2017, 23:47 | #2 |
Форумчанин
Регистрация: 12.04.2017
Сообщений: 889
|
Серьезно?
Код:
Так нельзя делать с объектами, коим является std::string nazvanietovara И читать его обратно тоже нельзя, как у вас - это все мусор будет, с адресами. Что значит, на другом компе будет не верный адрес и все вообще взорвется при чтении файла. Более того, сам способ так записывать гавно. Т.к. у структур есть выравнивания, т.е. на 64 бита системе (8 байт) скажем структура занимает 17 байт "почтучно", но реально она займет в памяти 24 байта (ближайшее кратное). И вот у вас уже запись-чтение не совсем верно. Потом вы этот файл несете на 32-бита машину, там реальный размер 20 байт, и все вообще взорвалось. Если уж приспичило, нужно указывать параметры компиляции и задавать фиксированое выравнивание, скажем 4 байта (как это на VC не знаю, это не стандарт). Т.е. я хочу сказать - оптом всю структуру писать и читать крайне плохая идея. И два - постарайтесь не использовать reinterpret_cast ближайшие полгода, этой командой вы шлете компилятор в пешее эротическое со всеми его предупреждениями, и он позволяет вам отстрелить себе ногу (а вот в тему дискуссия: http://www.programmersforum.ru/showt...=143908&page=5) Последний раз редактировалось alexzk; 21.06.2017 в 14:23. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
0xC0000005: Нарушение прав доступа при чтении "0x00000088" | ninja2 | Visual C++ | 9 | 17.08.2015 22:47 |
Фильтровать товары при "бесконечной" прокрутке | MrBrain | JavaScript, Ajax | 4 | 29.09.2012 22:48 |
Отфильтровать Метаэлементы "." и ".." при чтении каталога | Armatus | PHP | 1 | 14.05.2012 15:35 |
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" | aleksei78 | Microsoft Office Excel | 13 | 25.08.2009 12:04 |