Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 03.12.2008, 18:57   #1
bvana
Новичок
Джуниор
 
Регистрация: 03.12.2008
Сообщений: 2
По умолчанию 4х байтовое число

Здравствуйте.
Поиск не помог, вопрос такой.
Есть двоичный файл, в который 4мя байтами записано число. Т.е в дампе четыре последовательных байта – одно число.
Как его считать из файла, что бы получить значение именно 4х байтового числа, а не отдельных его байтов?
bvana вне форума
Старый 03.12.2008, 19:52   #2
vvviperrr
Тупой студент
Форумчанин
 
Аватар для vvviperrr
 
Регистрация: 12.05.2007
Сообщений: 614
По умолчанию

ээ
int i;
fread(&i, sizeof(i), 1, fp);

инт 4 байта и занимает.
или я что то не так понял?
vvviperrr вне форума
Старый 03.12.2008, 20:07   #3
bvana
Новичок
Джуниор
 
Регистрация: 03.12.2008
Сообщений: 2
По умолчанию

все правильно, спасибо.

а я пытался через ifstream и .get.
таким способом можно какнить реализовать?
bvana вне форума
Старый 03.12.2008, 22:29   #4
Blade
Software Engineer
Участник клуба
 
Аватар для Blade
 
Регистрация: 07.04.2007
Сообщений: 1,618
По умолчанию

Цитата:
Сообщение от vvviperrr Посмотреть сообщение
инт 4 байта и занимает.
Это не всегда так. Зависит от конкретного компилятора и ОС. Так что нужно быть осторожней с этим
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
Blade вне форума
Старый 03.12.2008, 22:42   #5
vvviperrr
Тупой студент
Форумчанин
 
Аватар для vvviperrr
 
Регистрация: 12.05.2007
Сообщений: 614
По умолчанию

2Blade ну ось по умолчанию имеется ввиду 32 битная) а во всех 32 битных компилях инт32 = 4 байта
vvviperrr вне форума
Старый 04.12.2008, 22:26   #6
Blade
Software Engineer
Участник клуба
 
Аватар для Blade
 
Регистрация: 07.04.2007
Сообщений: 1,618
По умолчанию

Неужели ты ВСЕ компиляторы перепробовал? =))
Я понимаю, что в 95% случаев все будет нормально, но стандартом не оговорен точный размер типа int =))
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
Blade вне форума
Старый 04.12.2008, 23:06   #7
vvviperrr
Тупой студент
Форумчанин
 
Аватар для vvviperrr
 
Регистрация: 12.05.2007
Сообщений: 614
По умолчанию

2Blade да ладно

Цитата:
ISO/IEC 9899:1999 (E)
6.2.5 Types
There are fife standars signed integer types, designated as signed char, short int, int, long int, and long long int.
[...]
A "plain" int object has the natural size suggested by the architecture of the execution environment
[...]
).
от ос зависит, согласен. а если под 32 разрядной осью компиль представляет инт не четырьмя байтами, то это сугубо твои проблемы (или компиля? )
vvviperrr вне форума
Старый 05.12.2008, 00:08   #8
MaTBeu
Eclipse Foundation
Старожил
 
Аватар для MaTBeu
 
Регистрация: 19.09.2007
Сообщений: 2,604
По умолчанию

Я понимаю, что это все очень интересно (я имею ввиду особенности выделения памяти под инт в том или ином компиляторе), но вам не кажется, что вы "слегка" ушли от темы?

ПыСы: помоему на вопрос ТС вы ответили в #2, так что я думаю это конец
MaTBeu вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Число werser Помощь студентам 12 18.06.2008 20:16
Найти и вывести все слова,у котоpых число гласных букв пpевышает число согласных. Briz Помощь студентам 2 11.05.2008 00:56
Ввести число N и определить делится ли оно без остатка на число M (VBA) Ivanich Microsoft Office Excel 7 24.04.2008 19:43
Число в пропись Shavminator Microsoft Office Excel 6 07.01.2008 10:32
Число N, заменить одну из его цифр, чтобы получилось число, max близкое к некоторой степени двойки urgu_st Помощь студентам 13 23.10.2007 09:14