(Borland C++Builder 6) [Статья 12] (TxRxV1)(Buf)(FIFO)(LIFO)(Pocket)(C/C++)

| 27.02.2016

(Borland C++Builder 6) [Статья 12] (TxRxV1)(Buf)(FIFO)(LIFO)(Pocket)(C/C++)

 

 

Описание :
Наша статья является надстройкой над ранее уже созданным модулем. Как-то раз мы уже вели разговор о распространенных вариантах хранения данных в памяти, я имею в виду рассказ о концепциях последовательного доступа. Мы разобрались с двумя вариантами LIFO и FIFO, где работали с байтами и нас все устраивало. Теперь мы хотим немного увеличить атомарные кусочки информации для последующего использования, ведь работать с отдельными байтами не всегда удобно и как бы хорошо было, имей мы мешок который хранить может пакеты. Этим мы и займемся, поставив себе целью сделать удобный алгоритм хранения данных в виде пакетов различной длинны, сохраняя концепцию последовательного доступа. Другими словами хотим набор функций типа положить пакет в мешок и функцию вытащить пакет из мешка. Напомню что в нашем подходе вытащить значит больше не хранить его в мешке. 

Статьи в помощь :
Уроки (C/C++) в Builder6
(Borland C++Builder 6) [Статья 4] (FIFO)(LIFO)(BUF)(Буфер)(Память)(C/C++)

Это часть цикла взаимосвязанных статей TxRxV1:
1) (Borland C++Builder 6) [Статья 6] (TxRxV1)(SLIP)(ESC)(ESC)(Обмен)(Протокол)(C/C++)
2) (Borland C++Builder 6) [Статья 7] (TxRxV1)(FTDI)(ftd2xx)(FT_Write)(FT_Read)(Обмен)(C/C++)
3) (Borland C++Builder 6) [Статья 8] (TxRxV1)(CRC)(Контрольная сумма)(Обмен)(C/C++) 
4) (Borland C++Builder 6) [Статья 9] (TxRxV1)(Канал)(Протокол)(Связь)(Обмен)(C/C++) 
5) (Borland C++Builder 6) [Статья 10] (TxRxV1)(FILE)(Process)(Tread)(stdio)(C/C++)
6) (Borland C++Builder 6) [Статья 11] (TxRxV1)(Driver)(Поток)(Параллелизм)(stdio)(C/C++) 
7) (Borland C++Builder 6) [Статья 12] (TxRxV1)(Buf)(FIFO)(LIFO)(Pocket)(C/C++)
8) (Borland C++Builder 6) [Статья 13] (TxRxV1)(TestUse)(AVR)(uart)(Tx/Rx)(C/C++)
9) (Borland C++Builder 6) [Статья 14] (TxRxV1)(TestUse)(STM32)(uart)(Tx/Rx)(C/C++)

Библиотека DAH_BUF_izi.h (ссылка на скачивание)

DAH_BUF_izi.h

DAH_BUF_izi.cpp

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *