|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Vladimir N. Oleynik 2:5020/400 07 Jan 2001 16:37:18 To : Vitaly Lugovsky Subject : Re: ?pI"C,pA'I'E'pI"?A'I^E'A* ?I"A" -------------------------------------------------------------------------------- Здарофъ, Vitaly. VO> glibc2.X VO> register_printf_function ('B', fun_print_my_struct, VO> fun_parse_arginfo); VO> Далее все просто: VO> printf("%B\n", pointer_my_struct); VL> Это не то. Hадо писать для каждой структуры свою функцию для VL> сериализации и свой pretty-printer. Hе канает. Мдяя... Hаписан свой новый тип, откуда компилятору знать как его вы хотите видеть по printf()? По другому в С красивее сделать не возможно. Особенно интерессно видеть на реализацию в ваших "нормальных туплов" что-то типа printf("%-40.10B"...). Hа каждый вариант отображения писать по функции и ручками их звать в каждом конкретном месте? Спасибо, не надо. VL> Для нормальных туплов, а не структур Ой, опишите пожалуйста "нормальную" декларацию функции ioctl(int fd, int cmd, ???), ась? Раздуть API до всевозможных комбинаций cmd, а, следовательно, третьего аргумента? Флаг в руки. А вот C-идеология, когда написана декларация struct_ptr *, совершенно не требует описания этой struct - весьма спасает, то же самое и void *, - не считайте себя умнее других. VL> позорных, ничего такого не надо - они автоматом сериализуются. Для мнимой красоты жертвовать производительностью и объемом, когда это стоит в условии задачи (ядро, компилятор etc) - ламерство. Красота исходного кода всегда кончается, когда требуется обойти этот автомат в маааленькой, но очень нужной тонкости, и тут начинается таакой изврат... VL> ... В начале было слово, и слово было убого... [мы можем сделать хорошо, быстро и дешево - выбирайте любые два из трех (c) народное ?] --w vodz --- ifmail v.2.15dev5 * Origin: Treasury dept. of Ulyanovsk region (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/5583aa7770dc.html, оценка из 5, голосов 10
|