![]() |
|
Модераторы: bsa |
![]()
|
|
| marina12 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 15.2.2013 Репутация: нет Всего: нет |
Здравствуйте!
Столкнулась с такой проблемой,что когда записываю в файл структуры с помощью fwrite, в файл печатаются иероглифы(скорее всего,адрес первого символа строки,который хранится в ячейке структуры...). Как этого можно избежать?Если можно,то объясните пожалуйста на моём примере,который приведен ниже (сохранение записной книжки в файл):
Это сообщение отредактировал(а) bsa - 22.5.2013, 17:08 |
|||
|
||||
| KaZepKa |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 29.10.2011 Репутация: нет Всего: нет |
Интересно вы как-то записываете в файл, вам для этого нужно определить конкретно, что в файл записывать :
А так он и записывает:
т.е. его адрес |
||||
|
|||||
| feodorv |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2214 Регистрация: 30.7.2011 Репутация: 12 Всего: 45 |
У Вас структура struct Telo не маленькая. Скорее всего непосредственно данными занята небольшая часть структуры, всё стальное - мусор, оставшийся при malloc или new (чем, кстати, Вы пользуетесь?) Чтобы этого не было, сразу после аллокации структуры делайте
а потом уже заполняйте структуру значениями. И да, записывая в файл именно структуру struct Value, Вы записываете и её элемент Value *next; который также добавит иероглифов. Не знаю, что Вам в файле нужно, но если простой список структур struct Telo, то и записывать нужно только Telo:
-------------------- Напильник, велосипед, грабли и костыли - основные инструменты программиста... |
||||
|
|||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |