![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Code Magister |
|
||||||
![]() Magister of Code ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 9.7.2004 Где: Kiev Репутация: 1 Всего: 1 |
Я дублировал тему, потому-что в старой мне не отвечают, потому-что я рано написал "спасибо"
Просьба модерам ен удалять ее хотя бы до завтра плиз, потому-что мне эта прога нужна до завтра или вобще не нужна! С++ 3.1 Короче мне надо считать изображение дисплея(в графическом режиме) в файл, исползуя 4-битовое представление каждого пикселя. Как я понял последовательно считывать и записывать по 2 числа в char. Но что-то у меня с этим смещением не получается. Как записать, а потом прочитать два числа(4 битовых) в чар? chaos мне ответил:
Вобщем, я сам придумал как считывать от туда:
Не знаю почему, но считывает правильно. И написал я эту прогу таким образом(сначала считывает экран и записывает в файл, а потом считывает файл и выводит на дисплей):
ЕСТЕСТВЕННО ОНА НЕ ПАШЕТ! А мне седня еще 2 проги надо написать, поэтому прошу Вас помочь мне разобраться с этой. Напоминаю, что в char надо утрамбовать 2 пикселя. Это сообщение отредактировал(а) _Slipknot - 28.4.2005, 20:57 --------------------
|
||||||
|
|||||||
| Leksey |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 332 Регистрация: 12.12.2004 Репутация: нет Всего: 1 |
Может быть я не прав, но мне кажется ошибка в том, что ты из файла считываешь
не один байт а сразу несколько когда указываешь fscanf(file,"%i" , &ch). i - integer занимает больше одного байта.Попробуй использовать спецификатор %с: fscanf(file,"%c" , &ch). Добавлено @ 21:33 И еще: chislo2=ch>>4; chislo1=ch-chislo2<<4; будет лучше, поскольку не каждый компилятор хорошо оптиизирует код. |
|||
|
||||
| Code Magister |
|
|||
![]() Magister of Code ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 9.7.2004 Где: Kiev Репутация: 1 Всего: 1 |
Leksey попробовал, не помогло.
--------------------
|
|||
|
||||
| Leksey |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 332 Регистрация: 12.12.2004 Репутация: нет Всего: 1 |
Можно не скромный вопрос?
Зачем ты в файл число 0xff записываешь 640*480 раз. |
|||
|
||||
| Code Magister |
|
|||
![]() Magister of Code ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 9.7.2004 Где: Kiev Репутация: 1 Всего: 1 |
Разве я записываю это число, а не цвет пикселя? Тогда исправь, пожалуйста. Я зайти смогу только завтра утром. Если не трудно исправь и выложи рабочий код плиз.
--------------------
|
|||
|
||||
| Leksey |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 332 Регистрация: 12.12.2004 Репутация: нет Всего: 1 |
Извини, но проверить я его не смогу , поскольку у меня нет С++ 3.1
Но думаю ,что если убрать переменные chislo1 и chislo2 и заменить их на p1 и p2 все заработает:
|
|||
|
||||
| Code Magister |
|
|||
![]() Magister of Code ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 9.7.2004 Где: Kiev Репутация: 1 Всего: 1 |
Leksey Спасибо!
Если вдруг кому понадобится, то там еще перед чтением надо было сбросить курсор в начало файла. И при этом прога почему-то искажала картинку Но главное, что я ее сдал --------------------
|
|||
|
||||
| Doc_d0s |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 206 Регистрация: 15.12.2004 Где: в кресле Репутация: 2 Всего: 3 |
2SlipKnot А ты под чем компилишь, я тут Серпинского чертить взялся и BC 3.11 материт меня
--------------------
Админ- это вождь Apache'й :) |
|||
|
||||
| Code Magister |
|
|||
![]() Magister of Code ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 9.7.2004 Где: Kiev Репутация: 1 Всего: 1 |
Doc_d0s под BC 3.1 компилю, но думаю проблема не в компиляторе, а где-то в моей проге.
--------------------
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |