3 / 3 / 0
Регистрация: 10.06.2016
Сообщений: 204
|
||||||
1 | ||||||
Чтение бинарного файла в строку: читается только один байт18.05.2017, 16:39. Просмотров 1540. Ответов 3
Читаю бинарный файл в строку, но почему-то читает только 1 байт. Где здесь может быть ошибка?
0
|
|
18.05.2017, 16:39 | |
OpenCV. Некорректное чтение бинарного файла Чтение/запись определенного количества байт из бинарного файла Чтение бинарного файла
|
|
1932 / 1761 / 822
Регистрация: 23.01.2014
Сообщений: 6,205
|
|
18.05.2017, 20:54 | 2 |
![]() Решениеint ns=fread(&s, sizeof(s), 1, f); -> int ns=fread(s, sizeof(char), n, f); Не по теме: Кстати, в Вашем коде нет ничего от C++, тут чистый C.
1
|
3 / 3 / 0
Регистрация: 10.06.2016
Сообщений: 204
|
|
18.05.2017, 22:14 [ТС] | 3 |
А знак амперсанда '&' перед 's' какую роль играет? Работает с ним и без него. С ним - это передача адреса? А без него?
0
|
1932 / 1761 / 822
Регистрация: 23.01.2014
Сообщений: 6,205
|
|
18.05.2017, 23:40 | 4 |
Никакую, это ошибка в данном случае. (неопределенное поведение, undefined behaviour)
С ним не работает. То есть количество считанных байт Вы получите, но данные будут считываться неизвестно куда, а не в массив s. Правильно либо s , либо &s[0] в данном случае. Оба эти варианта равносильны и правильны.Без него передается указатель на первый элемент массива. С ним адрес указателя, что является бессмысленным. С тем же успехом туда можно запихнуть адрес любой другой переменной.
1
|
18.05.2017, 23:40 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь. Чтение бинарного файла
Чтение бинарного файла в MFC
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |