Борьба с утечками ресурсов и переполняющимися буферами

       

строка, реализованная в виде списка (простейшая реализация)


Это просто реализуется, но имеет дикий оверхид, требующий для хранения каждого символа 17 байт, поэтому на практике приходится использовать комбинированный способ, сочетающий в себе строковые буфера со списками:

#define STR_SIZE     256

struct slist

{

       unsigned int len;

       unsigned char buf[STR_SIZE];

       struct slist *prev;

       struct slist *next;

       struct slist *first;

       struct slist *last;

};



Содержание раздела