![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 29.01.2009
Сообщений: 22
|
![]()
Добрый день!
Вопрос вроде бы на первый взгляд простой, но ответ на него найти не получается. Как определить разме строки? Результат ниже приведенного кода: Код:
Код:
|
![]() |
![]() |
![]() |
#2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Код:
I'm learning to live...
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 29.01.2009
Сообщений: 22
|
![]()
Хорошо, согласен, тогда усложняю задачу
![]() Код:
|
![]() |
![]() |
![]() |
#4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Не удивительно )
Я вообще удивлен что программа дошла до вызова функции, а не вылетела раньше. Ты массив buf описать - описал, а память под него не выделил. Вот и лезет AV.
I'm learning to live...
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 29.01.2009
Сообщений: 22
|
![]()
Да, но это не решает задачи, размер буфера не определился все рвно.
Но ошибка ушла ![]() Код:
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,372
|
![]()
JPG файл не есть строка.
Зачем определять длину строки, если у нас есть размер файла? Передавайте размер как второй аргумент - proc(char* buf, int len); |
![]() |
![]() |
![]() |
#7 | |
Пользователь
Регистрация: 29.01.2009
Сообщений: 22
|
![]() Цитата:
Причем передаваться в процедуру может любая строка, будь то загруженная из файла или введенная руками |
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 14.12.2012
Сообщений: 668
|
![]()
Во-первых, разобраться с представлением строк, почитать про нуль-терминатор. Во-вторых, учесть то, что fread не добавляет нуль-терминатор в конец прочитанного.
|
![]() |
![]() |
![]() |
#9 | |
Пользователь
Регистрация: 29.01.2009
Сообщений: 22
|
![]() Цитата:
Код:
Код:
|
|
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 14.12.2012
Сообщений: 668
|
![]()
Вы читаете не текст, откуда знаете что внутри прочитанного не используется '\0' ? Для оценки размера, fread возвращает количество прочитанных элементов.
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как определить размер физического диска? | Robin_ | Общие вопросы Delphi | 7 | 18.01.2016 07:11 |
Как определить размер видеостраницы | axeforever12009 | Помощь студентам | 2 | 18.06.2013 17:01 |
Как определить размер структуры | stpdqstns | Общие вопросы C/C++ | 10 | 30.01.2013 19:02 |
неопределённый размер строки типа char | _KUL | Общие вопросы C/C++ | 4 | 16.05.2012 19:54 |
Как в Delphi определить размер файла? | Nomad | Помощь студентам | 7 | 10.08.2010 08:33 |