![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| JoeBlack |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 29.9.2006 Репутация: нет Всего: нет |
Доброе время суток!
Кажется не ошибаюсь с подтемой форума Вопросик вот какой: есть ли программки, которые могут показывать содержимое файла не только в 16-ричной системе, но и в 2-й? Вот хочется, понимаешь, мне насладиться бесконечным рядом 0 и 1:). Ну и, конечно, как правильно они пишутся в свом названии...или где можно качнуть... Спасибо за ответ!!! |
|||
|
||||
| dumb |
|
|||
![]() sceloglauxalbifacies ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2929 Регистрация: 16.6.2006 Репутация: 8 Всего: 158 |
с темой ошибся.
собери этот ужасный кусок и медитируй:
|
|||
|
||||
| JoeBlack |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 29.9.2006 Репутация: нет Всего: нет |
Спасибо!!
Как все просто..а я искал нечто градиозное |
|||
|
||||
| Kuvaldis |
|
||||||||
![]() механик-вредитель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1189 Регистрация: 16.6.2006 Где: Минск Репутация: 11 Всего: 61 |
dumb,
1.
Ты открываешь файл в бинарном режиме, но используешь функции для работы с текстовыми. Не есть гуд: или уже используй fread(), или открывай в текстовом режиме (по правилу хорошего тона) 2.
С точки зрения переносимости тоже не гуд. Это в данный момент EOF = -1. Что будет потом, неизвестно. Лучше всегда использовать define - определения. Чтобы избежать возможных проблем. 3.
Честно говоря, данную строчку не совсем понял... ИМХО, лучше просто использовать system("pause") или getch() по-моему нижеприведенный код будет более красивым и переносисым (не факт, что char всегда будет 1 байт
Это сообщение отредактировал(а) Kuvaldis - 8.11.2006, 19:04 -------------------- Помни - когда ты спишь, враг не дремлет Спи чаще и дольше, изматывай врага бессоницей |
||||||||
|
|||||||||
| dumb |
|
||||||
![]() sceloglauxalbifacies ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2929 Регистрация: 16.6.2006 Репутация: 8 Всего: 158 |
Kuvaldis, честно говоря, не понимаю, что тебя сподвигло на критику...
но, уж "коль пошла такая пьянка", поспорим немного...
что такое "функции для работы с текстовыми"? ты знаешь на что влияет "бинарный режим"? попутно замечу, что открыв файл в текстовом режиме, ты внес некую нелогичность в работу кода, с учетом того, что он выводит содержимое файла по-битно.
чтобы не заводить специально массив для такого пустяка, использовал то, что подвернулось... getchar() тут лучше. это правильно, что "ИМХО" то, что ты написал в своем коде, в данном конкретном случае считаю излишним "наворачиванием" и неоправданными тормозами. и еще раз призываю прочесть вводную строчку к моему коду... |
||||||
|
|||||||
| Kuvaldis |
|
||||||||||
![]() механик-вредитель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1189 Регистрация: 16.6.2006 Где: Минск Репутация: 11 Всего: 61 |
dumb,
Ты не обижайся Вообще на написание своего варианта меня подбили 3 вещи: 1. Согласить, что чтение fread() как раз для бинарного режима, во-вторых, быстрее 2.
Не гуд. Просто я знаю по себе, что когда привыкаешь к написанию таких быстрых вариантов, потом это начинает входить в привычку... порой незаметно В данном случае возможно переполнение 3. if (c==-1) break; За это у нас "отрезают руки" 4. Бесконечный цикл - с точки зрения процедурного программирования не есть в ДАННОМ случае гуд (хотя и не смертельно) 5. printf("%d%d%d%d%d%d%d%d",(c>>7)&1,(c>>6)&1,(c>>5)&1,(c>>4)&1,(c>>3)&1,(c>>2)&1, (c>>1)&1,c&1) Ну некрасивая строчка, согласись. А там я в запале и больше написал... Теперь по твоим замечаниям 1.
На мой тоже, поэтому и привел вариант с getch() 2.
В бинарном режиме нет преобразования '\n' в 10, 13.т.е. биективное отображение. Тут с тобой соглашусь. следовало и мне открыть файл в бинарном режиме. 3.
Вот этого я и не заметил Сразу стал код смотреть - привычка В общем, я думаю, что мы друг друга поняли, все довольны P.S. НО мой код красивей (+ возможность в модернизации...) Это сообщение отредактировал(а) Kuvaldis - 9.11.2006, 14:20 -------------------- Помни - когда ты спишь, враг не дремлет Спи чаще и дольше, изматывай врага бессоницей |
||||||||||
|
|||||||||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |