Бинарная запись. С++

212
12 июля 2018, 01:00
Example:
For a set of six status inputs as shown for the ASCII data file in subclause 6.4.(0,0,0,0,1,1),
a) Write these status inputs as a binary number (110000), recognizing that the channels are listed low
bits first in the ASCII data file.
b) Then pad the number out to a 16 bit number (0000 0000 0011 0000).
c) Translate this to a hexadecimal value (00 30).
d) The data is then stored in LSB/MSB format (30 00).

Объясните, пожалуйста, как производится запись? Есть файл с такими строками:

110000
110100
110001

Нужно правильно записать каждую строку. Как это реализовать на c++.

Answer 1

@nick_n_a Я записываю бинарный файл, и только первые 6 элементов вектора записываются правильно 30 00, остальные значения равны 00 00 Записала вектор и файла.

input.txt
    0 0 0 0 1 1
    0 0 0 0 1 1     
    0 0 0 0 1 1
    0 0 0 0 1 1
    0 0 0 0 1 1
    0 0 0 0 1 1
    1 0 0 0 1 1


void writeVector(std::istream &Dfile)
{
    std::copy(std::istream_iterator<int>(Dfile), std::istream_iterator<int>(), std::back_inserter(vectorValue));
    std::copy(vectorValue.begin(), vectorValue.end(), std::ostream_iterator<int>(std::cout, " "));
};

for (size_t i = 0; i < 7; i++) 
    {
        int index = i + 1;
        file.write((char *)&index, sizeof(int));
unsigned short m_bytesCount = 0;
for (size_t k = 1; k < 6; ++k)
        {
            if (vectorValue[++i2] == 1)
                m_bytesCount |= 1 << i2;
            else
                m_bytesCount = 0;
        }
        file.write((char *)&m_bytesCount, sizeof m_bytesCount);
}
READ ALSO
Очередь(Добавление элементов)

Очередь(Добавление элементов)

Нужно создать функцию, добавление элементов в очередь, выводится ошибка:"Выражение должно быть допустимым для изменение левосторонним значением"...

370
Ошибка сегментирования (С++)

Ошибка сегментирования (С++)

При запуске файла возникает ошибка сегментирования (стек памяти сброшен на диск)Читал, что это может быть из-за того, что происходит утечка...

154
Visual Studio и Makefile

Visual Studio и Makefile

Надо было тестово собрать один проект под VS для проверки совместимости кода, в общем все собирается, но выдает следующее:

145