![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| FiMa1 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 408 Регистрация: 23.9.2006 Репутация: 5 Всего: 6 |
В файле "test" три символа - "abc". Определяется размер файла, он используется в качестве размера для динамически распределяемого массива. Соответственно, при выделении памяти malloc-ом, расчитываю выделить 3 байта и загрузить данные в массив. Вместо этого (IDE MS VS 7.0) получаю указатель str на строку вида "НННээээ««««««««ю" = 16 Byte. Поправьте меня, пожалуйста.
|
|||
|
||||
| Fazil6 |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1653 Регистрация: 3.5.2006 Где: Минск Репутация: 35 Всего: 60 |
ты видишь то, что дебагер смог проинтепретировать как строку по этому адресу, т.е. с выделенного адреса до первого встреченного нуля Добавлено @ 17:42
так по идее должно быть |
||||
|
|||||
| Бонифаций |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 827 Регистрация: 15.9.2005 Где: Brisbane Репутация: 1 Всего: 40 |
нет. fread читает не строки а блоки данных . К тому что считал fread нельзя относится как к строке, внутри считанных данных вполне могут быть нули. смотрим man fgets Это сообщение отредактировал(а) Бонифаций - 27.2.2007, 19:07 -------------------- Бонифаций. |
|||
|
||||
| Rockie |
|
||||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 23.4.2006 Репутация: 8 Всего: 31 |
Симпатишное решение, вот только
filelength Лучше узнавать размер открытого текстового файла таким образом:
-------------------- Чтобы иметь большой гардероб - надо иметь большой гардероб. |
||||||
|
|||||||
| Kuvaldis |
|
||||
![]() механик-вредитель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1189 Регистрация: 16.6.2006 Где: Минск Репутация: 11 Всего: 61 |
Fazil6,
Надо быть последовательным. Если уж sizeof() ипользовать, то везде (для переносимости) т.е.
-------------------- Помни - когда ты спишь, враг не дремлет Спи чаще и дольше, изматывай врага бессоницей |
||||
|
|||||
| FiMa1 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 408 Регистрация: 23.9.2006 Репутация: 5 Всего: 6 |
Всем большое спасибо, все разъяснилось! ИМХО -> Форум всегда славился быстрыми и доходчивыми ответами умных людей... Последним еще раз спасибо!
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |