170 похожих чатов

Мне нужно считать по битово с файла, нашел этот код

но не пойму его логику char c = 0xa5;
int n = 2;
int bit = (c >> n) & 1;
printf("bit = %d\n", bit); И чар в текстовом файле может не всегда быть равный 8 бит?

14 ответов

15 просмотров

Размер чара не зависит от файлов

ну побитно с файла вы не считаете никак. Точно это нужно?

Snowden- Автор вопроса
смкх
ну побитно с файла вы не считаете никак. Точно это...

нужно считывать чар и разлаживать их на биты? пробовал алгоритм хаффмана, но не знаю как записать биты файл.

Snowden- Автор вопроса
Snowden
нужно считывать чар и разлаживать их на биты? проб...

это нужно создать чар в него пихнуть 8 бит и этот чар в файл кинуть?

Snowden
это нужно создать чар в него пихнуть 8 бит и этот ...

Это нужно пойти почитать как в с++ работать с файлами

Snowden- Автор вопроса
смкх
подождите, а что вы делаете?

сжатие текста по алгоритму Хаффмана

Snowden
сжатие текста по алгоритму Хаффмана

во-первых, точно стоит лезть в Хаффмана, если проблемы с чтением файла возникают? если все равно нужно, то почему вы хотите побитно писать? Не проще обработать весь текст, если он маленький, и потом целиком все в файл побайтно записать?

Оберните код в теги: 3 символа ` до и после кода (в случае одиночной конструкции достаточно 1 ` с обеих сторон). Спасибо!

#include <iostream> #include <fstream> constexpr int ERROR{}; constexpr int OK{ 1 }; constexpr int SIZE_READ{ 1 }; constexpr int SIZE_BYTE{ 8 }; int main() { std::ifstream src{ "config.yaml", std::ios::binary }; if (src.fail()) { return ERROR; } uint8_t byte{}; while (!src.fail()) { src.read(reinterpret_cast<char*>(&byte), SIZE_READ); for (int i{}; i < SIZE_BYTE; ++i) { std::cout << ((byte >> i) & 0x1) << " "; } } return OK; }

#include <iostream> #include <fstream> constexpr int ERROR{}; constexpr int OK{ 1 }; constexpr int SIZE_READ{ 1 }; constexpr int SIZE_BYTE{ 8 }; int main() { std::ifstream src{ "file", std::ios::binary }; if (src.fail()) { return ERROR; } uint8_t byte{}; while (!src.fail()) { src.read(reinterpret_cast<char*>(&byte), SIZE_READ); for (int i{}; i < SIZE_BYTE; ++i) { std::cout << ((byte >> i) & 0x1) << " "; } } return OK; }

Оберните код в теги: 3 символа ` до и после кода (в случае одиночной конструкции достаточно 1 ` с обеих сторон). Спасибо!

03
#include <iostream> #include <fstream> constexpr ...

Лучше не использовать капс, оставь его препроцессору...

03
#include <iostream> #include <fstream> constexpr ...

Здесь нарушена договоренность о передаче уапеха в шел программах. Успех - это 0, у тебя 1

Похожие вопросы

Обсуждают сегодня

Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Я вот подумал. SSE выполняет операции максимум с 64-битной точностью. А FPU - всегда с 80-битной. Разве не должно быть FPU точнее тогда?
The Bird of Hermes
13
как быть с принтером? такой подход прокатит?
zamtmn
12
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Я не понимаю, это троллинг или что? Швабрика поддерживают, который буквально пишет на ассемблере взаимодействия с винапи. Я это ещё написал загрузчик и хоть что-то изучаю в о...
Shadow Akira
6
А вот это что за конструкция? Вернее, она тут нафига?
Serjone
10
Привет. Подскажите, как правильно сматчить лист фиксированного размера, чтобы компилятор не говорил мне о неполном паттерне? Допустим что-то такое [x', y'] = sort [x, y]?
Arseny
8
Карта сайта