
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
01.09.2005, 21:18
|
|||
|---|---|---|---|
|
|||
нужно считать из файла в структуру!!! |
|||
|
#18+
подскажите как можно из файла считать в структуру (в которой переменные int long char причем с битовыми полями) по байту!!Я стал делать так у меня некоторые байты не хотят лезти в char(пишут пустые значения) и еще некоторые в char считываются:вместо b3 пишет ffffffb3(в чем проблема???)!помогите!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2005, 22:08
|
|||
|---|---|---|---|
нужно считать из файла в структуру!!! |
|||
|
#18+
ты код приведи как читаешь и описание структуры. Не у всех есть хрустальный шар ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2005, 23:30
|
|||
|---|---|---|---|
нужно считать из файла в структуру!!! |
|||
|
#18+
выключи выравние элементов структуры. Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.09.2005, 07:56
|
|||
|---|---|---|---|
|
|||
нужно считать из файла в структуру!!! |
|||
|
#18+
Вот код: struct blockread{ long rad:32; int rad1:8; char rad2[2]; }; main(){ ifstream inGrad("rabota.dat",ios::nocreate); blockread bitread; inGrad.read((char*)&bitread,7); int a=0; printf("%d",bitread.rad); printf("%d",bitread.rad2); while(a<=1){ printf("%02x",bitread.rad2[a]); ++a; } } В dat файле следующий hex код записан 78 06 00 00 0B 01 B3 1)Нормально считывается rad,rad1 а вот char rad2 пишет ffffffcc ffffffcc??? 2)Если же из структуры убрать rad,rad1 и оставить только rad2[7] то считывает так 78 06 00 00 0B 01 ffffffB3??? Надо чтобы работал 1) или 2)B3 без ffff!!Подскажите как сделать и так так!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.09.2005, 09:39
|
|||
|---|---|---|---|
|
|||
нужно считать из файла в структуру!!! |
|||
|
#18+
Если я не ошибаюсь, то надо бы заменить char на unsigned char... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.09.2005, 11:40
|
|||
|---|---|---|---|
|
|||
нужно считать из файла в структуру!!! |
|||
|
#18+
так так и пиши свою структуру: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. А с битами ты перемудрил. Вот ты указал int rad1: 8 и что ты ожидал, что он займет 8 бит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.09.2005, 21:39
|
|||
|---|---|---|---|
|
|||
нужно считать из файла в структуру!!! |
|||
|
#18+
Анатолий Широковтак так и пиши свою структуру: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. А с битами ты перемудрил. Вот ты указал int rad1: 8 и что ты ожидал, что он займет 8 бит? Вообще-то хотел считать 1байт(8бит) в int rad1!!!Проверил вроде работает нормально только может еще пожскажите чтобы не возиться по форматированию char может как нибудь можно от ffffffb3 в случае 2 избавиться! как я посмотрел в char считывается число -77 и потом printf и выдает результат выше так можно ли как нибудь сделать чтобы выдавал b3??7 Спасибо все кто помог и заранее спасибо всем кто поможет!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.09.2005, 12:40
|
|||
|---|---|---|---|
нужно считать из файла в структуру!!! |
|||
|
#18+
Простите, топик весь не прочитал. Но может есть смысл попробовать читать беззнаковый char? У меня похожий баян был как-то. unsigned спас. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.09.2005, 12:43
|
|||
|---|---|---|---|
нужно считать из файла в структуру!!! |
|||
|
#18+
А ещё я читал freadом. Но тогда прагму надо включить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.09.2005, 22:32
|
|||
|---|---|---|---|
|
|||
нужно считать из файла в структуру!!! |
|||
|
#18+
unsigned подошел все работает всем спасибо!!Тему можно закрыть!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=57&tablet=1&tid=2032823]: |
0ms |
get settings: |
4ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
56ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 327ms |

| 0 / 0 |
