Я обычно пишу код C на C89, теперь некоторые функции C99 (например, intxx_t
или __VA_ARGS__
или snprintf
) очень полезны и могут быть даже жизненно важными.
До того, как я стал более моим требованием от C89 до C99, я хотел знать, какие из функций C99 были широко поддерживаются и какие из них не получили широкого распространения или даже считались вредными.
Я знаю, что мы могли бы просто проверить нашу поддержку целевого компилятора, но это значительно сократит нашу поддержку, и поскольку это для программного обеспечения с открытым исходным кодом, я предпочел бы иметь более широкую поддержку.
Например, мы используем компилятор Solaris (suncc) и gcc, но может быть и другой компилятор, который мы бы ушли с пути, пока мы могли поддерживать совместимость с очень небольшими усилиями.
Например, я никогда не работал в Windows и ничего не знал о компиляторах Windows, но было бы хорошо поддерживать совместимость с Windows.