putchar в стандартной библиотеке (stdio.h)

okunek

в stdio.h сидят строчки:
> #define _EXFUN(name, proto) __cdecl name proto
> int _EXFUN(putchar, (int;
> #define putchar(x) putc(x, stdout)
спрашивается: а зачем два putchar-а?

okunek

да, замечу, что никакими #ifdef-ами и подобными штуковинами они взаимонеисключаются

yolki

второй макрос в #ifdef-ах обычно.

yolki

я только что проверил на двух компиляторах - исключаются

okunek

и каким ifdef-ом или if-ом?
смотрел для gcc - не нашел взаимоисключения

okunek

вопрос закрыт за ненадобностью
попутно разбираясь, выяснил, что gcc - суперкомпилятор
он умеет заменять printf("%c",c) на putchar(c гений блять

apl13

попутно разбираясь, выяснил, что gcc - суперкомпилятор
он умеет заменять printf("%c",c) на putchar(c гений блять
Здрасьте, приехали. Откройте для себя радость оптимизирующих компиляторов.
ЗЫ. Как ты думаешь, сколько лет идее парсить printf при компиляции с тем, чтоб заменить на более производительное?..

Olenenok

а ещё он проверяет форматы
Оставить комментарий
Имя или ник:
Комментарий: