0 / 0 / 0
Регистрация: 22.12.2011
Сообщений: 18
|
||||||
1 | ||||||
fopen возвращает NULL16.02.2012, 17:30. Показов 3031. Ответов 17
Метки нет (Все метки)
подскажите пожалуйста, кто-нибудь, где ошибка?
0
|
16.02.2012, 17:30 | |
Ответы с готовыми решениями:
17
fopen возвращает NULL. Функция fopen возвращает нулевой указатель (Visual Studio) CreateWindow возвращает NULL OpenProcess возвращает NULL |
0 / 0 / 0
Регистрация: 22.12.2011
Сообщений: 18
|
||||||
17.02.2012, 15:00 [ТС] | 5 | |||||
Теперь такой вопрос. Мне надо читать из файла определённый диапазон адресов но в виде long int ( что важно число знаковое!)
Как это сделать функцией FileWrite? Если просто подставить переменную то выдаёт следующую ошибку [C++ Error] Unit1.cpp(171): E2034 Cannot convert 'unsigned long' to 'void *' Добавлено через 3 минуты я что-то тут подумал... не вот так ли?
0
|
return (true);
1976 / 1111 / 221
Регистрация: 19.04.2011
Сообщений: 2,345
|
|
17.02.2012, 15:05 | 6 |
Простая логика говорит нам, что FileWrite - для записи. Для чтения используется FileRead
И если внимательно прочитать описание этой функции, то можно понять, что второй параметр отвечает за тип принимаемых данных, а третий за размер. Например, FileRead(handle, buf, 2) считает 2 элемента типа int в объявленный массив int buf[] Добавлено через 1 минуту Еще хорошим тоном считается выделять память после объявления
0
|
0 / 0 / 0
Регистрация: 22.12.2011
Сообщений: 18
|
|
17.02.2012, 15:08 [ТС] | 7 |
что-то не работает
0
|
return (true);
1976 / 1111 / 221
Регистрация: 19.04.2011
Сообщений: 2,345
|
||||||
17.02.2012, 15:10 | 8 | |||||
что-то неправильно. Пример из BCB вам поможет?
0
|
0 / 0 / 0
Регистрация: 22.12.2011
Сообщений: 18
|
|
17.02.2012, 15:13 [ТС] | 9 |
Добавлено через 1 минуту
такой код выдаёт а про FileWrite это опечатка, я ведь даже в примере FileRead написал Добавлено через 2 минуты просто у FileRead параметр void * Тип char * подходит А вот long нет
0
|
return (true);
1976 / 1111 / 221
Регистрация: 19.04.2011
Сообщений: 2,345
|
||||||
17.02.2012, 15:14 | 10 | |||||
Такой какой? Приведите весь код, где объявлен массив, выделена память и происходит считывание.
Это неправда, вот простой пример:
0
|
Модератор
3387 / 2159 / 352
Регистрация: 13.01.2012
Сообщений: 8,378
|
|
17.02.2012, 15:20 | 11 |
передавайте адрес на long переменную
1
|
0 / 0 / 0
Регистрация: 22.12.2011
Сообщений: 18
|
|
17.02.2012, 15:21 [ТС] | 12 |
А если мне не нужен массив? Я работаю отдельно с каждым long , мне достаточно просто считать один, потом другой...
0
|
Модератор
3387 / 2159 / 352
Регистрация: 13.01.2012
Сообщений: 8,378
|
||||||
17.02.2012, 15:37 | 14 | |||||
не нужно массив
1
|
0 / 0 / 0
Регистрация: 22.12.2011
Сообщений: 18
|
|
17.02.2012, 15:52 [ТС] | 15 |
Читать-то читает, но задом наперёд байты идёт
Напрмер в файле вот так идут байты 0С 00 83 00 а в переменную читается вот так 83000C Бредово так, зачем нужна такая функция которая задом наперёд читает?
0
|
Модератор
3387 / 2159 / 352
Регистрация: 13.01.2012
Сообщений: 8,378
|
|
17.02.2012, 16:33 | 16 |
все читается правильно. число в переменную считывается корректно. если вы запишите в файл число 123. то и считаете 123. байты числа пишутся в файл в обратном порядке потому что они в памяти расположены именно в таком порядке, обратитесь к соотв. разделу литературы
0
|
0 / 0 / 0
Регистрация: 22.12.2011
Сообщений: 18
|
|
17.02.2012, 16:45 [ТС] | 17 |
неплохая инфа
http://www.ibm.com/developerwo... u-endianc/
0
|
Модератор
3387 / 2159 / 352
Регистрация: 13.01.2012
Сообщений: 8,378
|
|
17.02.2012, 16:56 | 18 |
если вы посылаете данные на машину работающую на альфе или вообще ваквантер какой нибудь то это действительно важно. для виндовс - расслабтесь
0
|
17.02.2012, 16:56 | |
17.02.2012, 16:56 | |
Помогаю со студенческими работами здесь
18
CreateWindowEx возвращает NULL OpenDesktop возвращает NULL QPixmap возвращает Null GetForegroundWindow возвращает NULL из потока Что возвращает time(NULL)? Функция IMG_LoadTexture постоянно возвращает NULL Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |