The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Релиз почтового сервера Postfix 3.4.0 "
Отправлено Ordu, 28-Фев-19 19:25 
Эмм... Посмотрел вокруг и...

src/util/vstring.h:

#define VSTRING_SPACE(vp, len)    ((vp)->vbuf.space(&(vp)->vbuf, (len)))
#define vstring_str(vp)        ((char *) (vp)->vbuf.data)
#define VSTRING_LEN(vp)        ((ssize_t) ((vp)->vbuf.ptr - (vp)->vbuf.data))
#define vstring_end(vp)        ((char *) (vp)->vbuf.ptr)
#define VSTRING_TERMINATE(vp)    do { \
                    *(vp)->vbuf.ptr = 0; \
                } while (0)
#define VSTRING_RESET(vp)    do { \
                    (vp)->vbuf.ptr = (vp)->vbuf.data; \
                    (vp)->vbuf.cnt = (vp)->vbuf.len; \
                } while (0)
#define    VSTRING_ADDCH(vp, ch)    VBUF_PUT(&(vp)->vbuf, ch)
#define VSTRING_SKIP(vp)    do { \
                    while ((vp)->vbuf.cnt > 0 && *(vp)->vbuf.ptr) \
                        (vp)->vbuf.ptr++, (vp)->vbuf.cnt--; \
                } while (0)
#define vstring_avail(vp) ((vp)->vbuf.cnt)

Вот где живут настоящие C-программисты. Я думал они миф, и их не существует в природе, ан нет. Ты глянь, они не боятся использовать макросы там, где можно (напрашивается!) использовать inline функции, и несмотря на это их код работает, и даже безопасен. Даже их ошибки, не делают код уязвимым.

Респект и уважуха. Я не знаю как им это удаётся, и даже боюсь узнать. Я уж лучше в уютненьком rust'е.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру